Skip to content

List the invoices of a sales order

Open .md

GET/v2/api/store/{team_slug}/v2/sales_order/{unique_key}/invoice

v2Operation ID v2_public_sales_order_invoice_index_for_order

Returns the invoices of an order with their lines. {unique_key} is the order's id (for example V4keXwwxMQyXw7). The ord_ unique key does not work here: it gives an empty list with status 200, not an error, so an empty list does not prove the order has none. An unknown id returns an empty list.

Permission

Any member of the team.

Path parameters

  • team_slugstringrequired

    Your team slug, shown as Team ID next to your API key in Profile.

    • Example your-team
  • unique_keystringrequired

    The sales order's or quote's id (a hash id). The ord_ unique key and the order number do not work here.

    • Example V4keXwwxMQyXw7

Request body

This operation takes no request body.

Response

200Successful response.

  • dataarray of objectsrequired
    Fields of each item (22)
    • idstringrequired
    • order_idstringrequired
    • totaldecimal pairrequired

      Invoice total. A decimal pair: the amount is value ÷ 10^dp ({ "value": 125000, "dp": 4 } is 12.50). Kept with 4 decimal places; an amount never set can come as { "value": 0, "dp": 0 }. Read dp every time: it can differ between fields and records.

    • billing_address_idstring | null
    • calc_deposit_totalinteger | number | string | null

      The order's deposit amount. Thousandths, an older encoding: 12500 is 12.50. Usually a whole number; an amount finer than a thousandth comes back as a number with a fraction (1234.5 is 1.2345), or as a string ("1234.5") when you send X-Yoprint-Decimal-Format: exact-v1. See Money and quantities.

    • cart_item_subtotaldecimal pair

      Lines subtotal. A decimal pair: the amount is value ÷ 10^dp ({ "value": 125000, "dp": 4 } is 12.50). Kept with 4 decimal places; an amount never set can come as { "value": 0, "dp": 0 }. Read dp every time: it can differ between fields and records.

    • created_atstring (date-time) | null

      Created. ISO 8601 with offset, or null.

    • customerobject | null

      The customer record, with the same fields as Get a customer (GET /v1/api/store/{team_slug}/customer/{hash_id}); the main ones are listed here.

      Child fields (6)
    • discount_subtotaldecimal pair

      Discount. A decimal pair: the amount is value ÷ 10^dp ({ "value": 125000, "dp": 4 } is 12.50). Kept with 4 decimal places; an amount never set can come as { "value": 0, "dp": 0 }. Read dp every time: it can differ between fields and records.

    • is_paidboolean
    • is_validboolean
    • issue_datestring (date-time) | null

      Issue date. ISO 8601 with offset, or null.

    • itemsarray of objects

      The invoice lines.

    • paid_amountinteger | number | string | null

      Paid on this invoice. Thousandths, an older encoding: 12500 is 12.50. Usually a whole number; an amount finer than a thousandth comes back as a number with a fraction (1234.5 is 1.2345), or as a string ("1234.5") when you send X-Yoprint-Decimal-Format: exact-v1. See Money and quantities.

    • pdf_urlarray of objects

      The invoice PDF links, despite the name: a list, first the standard invoice, then one per invoice PDF template the team has turned on.

      Fields of each item (4)
    • scoped_idstring

      The invoice number, from the team's invoice counter.

    • shipment_subtotaldecimal pair

      Shipping. A decimal pair: the amount is value ÷ 10^dp ({ "value": 125000, "dp": 4 } is 12.50). Kept with 4 decimal places; an amount never set can come as { "value": 0, "dp": 0 }. Read dp every time: it can differ between fields and records.

    • Tax on shipping. A decimal pair: the amount is value ÷ 10^dp ({ "value": 125000, "dp": 4 } is 12.50). Kept with 4 decimal places; an amount never set can come as { "value": 0, "dp": 0 }. Read dp every time: it can differ between fields and records.

    • shipping_address_idstring | null
    • tax_subtotaldecimal pair

      Tax. A decimal pair: the amount is value ÷ 10^dp ({ "value": 125000, "dp": 4 } is 12.50). Kept with 4 decimal places; an amount never set can come as { "value": 0, "dp": 0 }. Read dp every time: it can differ between fields and records.

  • statusintegerrequired
  • successbooleanrequired

Errors

  • 401The API key is missing or wrong (unauthenticated).

  • 403You are not allowed to do this. api_access_not_in_plan: your team's plan doesn't include API access (Pro and above, with an active subscription or trial), so every request answers this until the team upgrades. When your role lacks the permission the operation needs, the body is only {"message": "Insufficient Permission"}. Other refusals use the error envelope, with unauthorized or user_is_not_authorized.

  • 404Not found. page_not_found: the team slug is unknown, you are not a member of the team, or an id in the path is not one of this team's. code: null, with a message that starts "No query results for": there is no record with that id.