Skip to content
APIv1
Menu

Quotes and invoices

What a shipment was quoted at booking, and what Cubic has invoiced for it.

View as markdown
MethodPathReturns
GET/v1/shipments/{reference}/quoteThe quote the shipment was booked on.
GET/v1/shipments/{reference}/invoicesEvery invoice Cubic has issued to your account for the shipment.

The quote is the price agreed at booking. The invoices are what is billed: they can add charges the quote did not cover, such as duties, storage or waiting time.

Rules

  • What a shipment costs is the sum of total over its invoices that are not Cancelled.
  • Every amount is a Money object. Read its currency; an account can be invoiced in more than one.
  • Paying an invoice does not change the shipment's updatedAt. Read the invoices again for the current status and openBalance.
  • A shipment booked without a quote returns 404 quote_not_found. Do not retry.

Quote example

JSON
{
  "lineItems": [
    {
      "section": "Freight",
      "description": "Ocean Freight",
      "quantity": 2,
      "unit": "PerFortyFtHighCubeContainer",
      "unitPrice": {
        "amount": 2450,
        "currency": "USD"
      },
      "total": {
        "amount": 4900,
        "currency": "USD"
      }
    },
    {
      "section": "Destination",
      "description": "Destination Terminal Handling",
      "quantity": 2,
      "unit": "PerFortyFtHighCubeContainer",
      "unitPrice": {
        "amount": 310,
        "currency": "USD"
      },
      "total": {
        "amount": 620,
        "currency": "USD"
      }
    },
    {
      "section": "Destination",
      "description": "Import Customs Clearance",
      "quantity": 1,
      "unit": "PerShipment",
      "unitPrice": {
        "amount": 95,
        "currency": "USD"
      },
      "total": {
        "amount": 95,
        "currency": "USD"
      }
    },
    {
      "section": "Destination",
      "description": "Delivery",
      "quantity": 2,
      "unit": "PerFortyFtHighCubeContainer",
      "unitPrice": {
        "amount": 540,
        "currency": "USD"
      },
      "total": {
        "amount": 1080,
        "currency": "USD"
      }
    },
    {
      "section": "Other",
      "description": "Insurance",
      "quantity": 1,
      "unit": "PerShipment",
      "unitPrice": {
        "amount": 120,
        "currency": "USD"
      },
      "total": {
        "amount": 120,
        "currency": "USD"
      }
    }
  ],
  "subtotal": {
    "amount": 6815,
    "currency": "USD"
  },
  "discount": null,
  "total": {
    "amount": 6815,
    "currency": "USD"
  },
  "remarks": "Rates exclude UK import duty and VAT.",
  "acceptedAt": "2026-09-16T13:05:00Z"
}

Invoices example

JSON
{
  "data": [
    {
      "number": "10482",
      "status": "Paid",
      "issueDate": "2026-09-30",
      "dueDate": "2026-10-30",
      "lineItems": [
        {
          "description": "Ocean Freight",
          "note": null,
          "quantity": 2,
          "unit": "PerFortyFtHighCubeContainer",
          "unitPrice": {
            "amount": 2450,
            "currency": "USD"
          },
          "amount": {
            "amount": 4900,
            "currency": "USD"
          },
          "taxRate": null,
          "tax": {
            "amount": 0,
            "currency": "USD"
          }
        },
        {
          "description": "Insurance",
          "note": null,
          "quantity": 1,
          "unit": "PerShipment",
          "unitPrice": {
            "amount": 120,
            "currency": "USD"
          },
          "amount": {
            "amount": 120,
            "currency": "USD"
          },
          "taxRate": null,
          "tax": {
            "amount": 0,
            "currency": "USD"
          }
        }
      ],
      "openBalance": {
        "amount": 0,
        "currency": "USD"
      },
      "currency": "USD",
      "subtotal": {
        "amount": 5020,
        "currency": "USD"
      },
      "tax": {
        "amount": 0,
        "currency": "USD"
      },
      "total": {
        "amount": 5020,
        "currency": "USD"
      },
      "creditApplied": {
        "amount": 0,
        "currency": "USD"
      }
    },
    {
      "number": "10517",
      "status": "Unpaid",
      "issueDate": "2026-11-10",
      "dueDate": "2026-12-10",
      "lineItems": [
        {
          "description": "Destination Terminal Handling",
          "note": null,
          "quantity": 2,
          "unit": "PerFortyFtHighCubeContainer",
          "unitPrice": {
            "amount": 310,
            "currency": "USD"
          },
          "amount": {
            "amount": 620,
            "currency": "USD"
          },
          "taxRate": null,
          "tax": {
            "amount": 0,
            "currency": "USD"
          }
        },
        {
          "description": "Import Customs Clearance",
          "note": null,
          "quantity": 1,
          "unit": "PerShipment",
          "unitPrice": {
            "amount": 95,
            "currency": "USD"
          },
          "amount": {
            "amount": 95,
            "currency": "USD"
          },
          "taxRate": null,
          "tax": {
            "amount": 0,
            "currency": "USD"
          }
        },
        {
          "description": "Delivery",
          "note": null,
          "quantity": 2,
          "unit": "PerFortyFtHighCubeContainer",
          "unitPrice": {
            "amount": 540,
            "currency": "USD"
          },
          "amount": {
            "amount": 1080,
            "currency": "USD"
          },
          "taxRate": null,
          "tax": {
            "amount": 0,
            "currency": "USD"
          }
        },
        {
          "description": "Storage",
          "note": "Port storage, 2 days beyond the free time",
          "quantity": 2,
          "unit": "PerDay",
          "unitPrice": {
            "amount": 85,
            "currency": "USD"
          },
          "amount": {
            "amount": 170,
            "currency": "USD"
          },
          "taxRate": null,
          "tax": {
            "amount": 0,
            "currency": "USD"
          }
        }
      ],
      "openBalance": {
        "amount": 1965,
        "currency": "USD"
      },
      "currency": "USD",
      "subtotal": {
        "amount": 1965,
        "currency": "USD"
      },
      "tax": {
        "amount": 0,
        "currency": "USD"
      },
      "total": {
        "amount": 1965,
        "currency": "USD"
      },
      "creditApplied": {
        "amount": 0,
        "currency": "USD"
      }
    }
  ]
}

ShipmentQuote

FieldTypeDescription
lineItemsQuoteLineItem[]The quoted charges, in the order the Cubic app lists them. Charges included in another charge are not listed.
subtotalMoneyThe quoted price before any discount. Always USD; charges quoted in another currency are converted at the current exchange rate, so it can move from one read to the next. It can be more than the sum of lineItems when the price includes a charge that is not itemised.
discountMoney | nullA promotional discount, as a negative USD amount. null when there is none.
totalMoneyThe quoted price: subtotal plus discount. Always USD.
remarksstring | nullTerms and conditions written on the quote, such as what the price excludes. null when there are none.
acceptedAtstring | nullWhen the quote was accepted. ISO 8601, UTC. null on quotes accepted before December 2025.

QuoteLineItem

FieldTypeDescription
sectionstringWhich part of the journey the charge belongs to. The Cubic app groups the breakdown by it. Values: Origin, Freight, Destination, Customs, Other.
descriptionstringName of the charge.
quantitynumberHow many units are charged. Can be fractional, for example for weights.
unitstringWhat one unit of quantity is. PerShipment: once for the shipment. PerAllContainersCount: per container of any size. PerTeu: per twenty-foot equivalent unit. PerChargeableWeight: per kg of chargeable weight. PerCwt: per hundredweight (100 lb). MaximumWeightOrMeasurement: per revenue ton, the greater of cubic metres and metric tons. The other values name what they count. Values: PerShipment, PerAllContainersCount, PerTwentyFtContainer, PerFortyFtContainer, PerFortyFtHighCubeContainer, PerFortyFtTempControlContainer, PerFortyFiveFtHighCubeContainer, PerTeu, PerChargeableWeight, PerKg, PerCwt, PerCBM, MaximumWeightOrMeasurement, PerPallet, PerCarton, PerHour, PerDay.
unitPriceMoneyPrice of one unit.
totalMoneyunitPrice times quantity, rounded to the cent.

Invoice

FieldTypeDescription
numberstringInvoice number, as printed on the invoice.
statusstringUnpaid: not paid yet; it is overdue once dueDate has passed. Scheduled: a payment is scheduled. Paid: paid. PartiallyCredited: part of it was settled with a credit note and the rest is unpaid. Credited: settled in full with credit notes. Cancelled: voided; it is not owed and does not count towards the shipment's cost. Values: Unpaid, Scheduled, Paid, PartiallyCredited, Credited, Cancelled.
issueDatestringIssue date, yyyy-MM-dd.
dueDatestringDue date, yyyy-MM-dd.
currencystringISO 4217 currency code. Values: USD, EUR, GBP, CAD, ILS, AUD, JPY, CNY, HKD, INR, KRW, SGD, THB, TWD, VND.
lineItemsInvoiceLineItem[]The charges on the invoice, as printed on it.
subtotalMoneySum of the line amounts, before tax.
taxMoneySum of the line taxes.
totalMoneysubtotal plus tax: the invoiced amount.
creditAppliedMoneyCredit notes applied to this invoice.
openBalanceMoneyWhat is still to be paid. 0 once the invoice is paid, credited or cancelled.

InvoiceLineItem

FieldTypeDescription
descriptionstringName of the charge.
notestring | nullText printed under the charge on the invoice. null when there is none.
quantitynumberHow many units are charged. Can be fractional.
unitstringWhat one unit of quantity is. PerShipment: once for the shipment. PerAllContainersCount: per container of any size. PerTeu: per twenty-foot equivalent unit. PerChargeableWeight: per kg of chargeable weight. PerCwt: per hundredweight (100 lb). MaximumWeightOrMeasurement: per revenue ton, the greater of cubic metres and metric tons. The other values name what they count. Values: PerShipment, PerAllContainersCount, PerTwentyFtContainer, PerFortyFtContainer, PerFortyFtHighCubeContainer, PerFortyFtTempControlContainer, PerFortyFiveFtHighCubeContainer, PerTeu, PerChargeableWeight, PerKg, PerCwt, PerCBM, MaximumWeightOrMeasurement, PerPallet, PerCarton, PerHour, PerDay.
unitPriceMoneyPrice of one unit, before tax.
amountMoneyunitPrice times quantity, rounded to the cent, before tax.
taxRatenumber | nullTax rate as a fraction, for example 0.18 for 18% VAT. null when no tax is charged.
taxMoneyTax on amount, rounded to the cent. 0 when none.

Money

FieldTypeDescription
amountnumberAmount in currency, in major units (dollars, not cents). Totals have at most 2 decimals; unit prices up to 4.
currencystringISO 4217 currency code. Values: USD, EUR, GBP, CAD, ILS, AUD, JPY, CNY, HKD, INR, KRW, SGD, THB, TWD, VND.