---
title: "submitInvoice"
method: POST
path: "/delivery/2022-07-01/invoice"
tags: ["Delivery By Amazon v2022-07-01"]
---

# submitInvoice

`POST /delivery/2022-07-01/invoice`

Submits a shipment invoice for a given order or shipment. You must specify either an `orderId` or `shipmentId` as query parameter. If both parameters are supplied, `orderId` takes precedence over `shipmentId`.

**Usage Plan:**

| Rate (requests per second) | Burst |
| ---- | ---- |
| 1.133 | 25 |

The `x-amzn-RateLimit-Limit` response header returns the usage plan rate limits that were applied to the requested operation, when available. The table above indicates the default rate and burst values for this operation. Selling partners whose business demands require higher throughput may see higher rate and burst values than those shown here. For more information, see [Usage Plans and Rate Limits in the Selling Partner API](https://developer-docs.amazon/sp-api/docs/usage-plans-and-rate-limits-in-the-sp-api).

## Query parameters

- `orderId` string
- `shipmentId` string

## Request body

- SubmitInvoiceRequest — The request schema for the submitInvoice operation.
  - `invoices` InvoiceDetail[] — An array of invoice details to be submitted.
    - `invoiceNumber` string, required — The unique invoice number.
    - `invoiceDate` string, date-time, required — Invoice date.
    - `referenceNumber` string — An additional unique reference number used for regulatory or other purposes.
    - `remitToParty` PartyIdentification, required — Name/Address and tax details of the party.
      - `address` Address — Address of the party.
        - `name` string, required — The name of the person, business or institution at that address.
        - `addressLine1` string, required — First line of the address.
        - `addressLine2` string — Additional street address information, if required.
        - `addressLine3` string — Additional street address information, if required.
        - `city` string — The city where the person, business or institution is located.
        - `county` string — The county where person, business or institution is located.
        - `district` string — The district where person, business or institution is located.
        - `stateOrRegion` string — The state or region where person, business or institution is located.
        - `postalCode` string — The postal code of that address. It contains a series of letters or digits or both, sometimes including spaces or punctuation.
        - `countryCode` string, required — The two digit country code in ISO 3166-1 alpha-2 format.
        - `phone` string — The phone number of the person, business or institution located at that address.
      - `partyId` string, required — Assigned identification for the party.
      - `taxRegistrationDetails` TaxRegistrationDetails[] — Tax registration details of the entity.
        - `taxRegistrationType` 'VAT' | 'GST', required — Tax registration type for the entity.
        - `taxRegistrationNumber` string, required — Tax registration number for the entity. For example, VAT ID.
    - `shipFromParty` PartyIdentification, required — Name/Address and tax details of the party.
      - `address` Address — Address of the party.
        - `name` string, required — The name of the person, business or institution at that address.
        - `addressLine1` string, required — First line of the address.
        - `addressLine2` string — Additional street address information, if required.
        - `addressLine3` string — Additional street address information, if required.
        - `city` string — The city where the person, business or institution is located.
        - `county` string — The county where person, business or institution is located.
        - `district` string — The district where person, business or institution is located.
        - `stateOrRegion` string — The state or region where person, business or institution is located.
        - `postalCode` string — The postal code of that address. It contains a series of letters or digits or both, sometimes including spaces or punctuation.
        - `countryCode` string, required — The two digit country code in ISO 3166-1 alpha-2 format.
        - `phone` string — The phone number of the person, business or institution located at that address.
      - `partyId` string, required — Assigned identification for the party.
      - `taxRegistrationDetails` TaxRegistrationDetails[] — Tax registration details of the entity.
        - `taxRegistrationType` 'VAT' | 'GST', required — Tax registration type for the entity.
        - `taxRegistrationNumber` string, required — Tax registration number for the entity. For example, VAT ID.
    - `billToParty` PartyIdentification — Name/Address and tax details of the party.
      - `address` Address — Address of the party.
        - `name` string, required — The name of the person, business or institution at that address.
        - `addressLine1` string, required — First line of the address.
        - `addressLine2` string — Additional street address information, if required.
        - `addressLine3` string — Additional street address information, if required.
        - `city` string — The city where the person, business or institution is located.
        - `county` string — The county where person, business or institution is located.
        - `district` string — The district where person, business or institution is located.
        - `stateOrRegion` string — The state or region where person, business or institution is located.
        - `postalCode` string — The postal code of that address. It contains a series of letters or digits or both, sometimes including spaces or punctuation.
        - `countryCode` string, required — The two digit country code in ISO 3166-1 alpha-2 format.
        - `phone` string — The phone number of the person, business or institution located at that address.
      - `partyId` string, required — Assigned identification for the party.
      - `taxRegistrationDetails` TaxRegistrationDetails[] — Tax registration details of the entity.
        - `taxRegistrationType` 'VAT' | 'GST', required — Tax registration type for the entity.
        - `taxRegistrationNumber` string, required — Tax registration number for the entity. For example, VAT ID.
    - `shipToCountryCode` string — Ship-to country code.
    - `paymentTermsCode` string — The payment terms for the invoice.
    - `invoiceTotal` Money, required — An amount of money, including units in the form of currency.
      - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
      - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
    - `taxTotals` TaxDetail[] — Individual tax details per line item.
      - `taxType` 'CGST' | 'SGST' | 'CESS' | 'UTGST' | 'IGST' | 'MwSt.' | 'PST' | 'TVA' | 'VAT' | 'GST' | 'ST' | 'Consumption' | 'MutuallyDefined' | 'DomesticVAT', required — Type of the tax applied.
      - `taxRate` string — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `taxAmount` Money, required — An amount of money, including units in the form of currency.
        - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
        - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `taxableAmount` Money — An amount of money, including units in the form of currency.
        - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
        - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
    - `additionalDetails` AdditionalDetails[] — Additional details provided by the selling party, for tax-related or other purposes.
      - `type` 'SUR' | 'OCR' | 'CartonCount', required — The type of the additional information provided by the selling party.
      - `detail` string, required — The detail of the additional information provided by the selling party.
      - `languageCode` string — The language code of the additional information detail.
    - `chargeDetails` ChargeDetails[] — Total charge amount details for all line items.
      - `type` 'Freight' | 'Packing' | 'Duty' | 'Service' | 'SmallOrder' | 'InsurancePlacementCost' | 'InsuranceFee' | 'SpecialHandlingService' | 'CollectionAndRecyclingService' | 'EnvironmentalProtectionService' | 'TaxCollectedAtSource', required — Type of the charge applied.
      - `description` string — Description of the charge.
      - `chargeAmount` Money, required — An amount of money, including units in the form of currency.
        - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
        - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `taxDetails` TaxDetails[] — Tax amount details applied on this charge.
        - `taxType` 'CGST' | 'SGST' | 'CESS' | 'UTGST' | 'IGST' | 'MwSt.' | 'PST' | 'TVA' | 'VAT' | 'GST' | 'ST' | 'Consumption' | 'MutuallyDefined' | 'DomesticVAT', required — Type of the tax applied.
        - `taxRate` string — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
        - `taxAmount` Money, required — An amount of money, including units in the form of currency.
          - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
        - `taxableAmount` Money — An amount of money, including units in the form of currency.
          - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
    - `items` InvoiceItem[], required — Provides the details of the items in this invoice.
      - `itemSequenceNumber` integer, required — Unique number related to this line item.
      - `amazonProductIdentifier` string — Amazon Standard Identification Number (ASIN) of an item.
      - `vendorProductIdentifier` string — The vendor selected product identifier of the item. Should be the same as was provided in the purchase order.
      - `invoicedQuantity` ItemQuantity, required — Details of item quantity.
        - `amount` integer, required — Amount of units shipped for a specific item at a shipment level. If the item is present only in certain cartons or pallets within the shipment, please provide this at the appropriate carton or pallet level.
        - `unitOfMeasure` 'Cases' | 'Eaches', required — Unit of measure for the shipped quantity.
        - `unitSize` integer — The case size, in the event that we ordered using cases. Otherwise, 1.
        - `totalWeight` TotalWeight — The total weight of units that are sold by weight in a shipment.
          - `unitOfMeasure` 'POUNDS' | 'OUNCES' | 'GRAMS' | 'KILOGRAMS', required — The unit of measure for the weight of items that are ordered by cases and support pricing by weight.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `netCost` Money, required — An amount of money, including units in the form of currency.
        - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
        - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `netCostUnitOfMeasure` 'POUNDS' | 'OUNCES' | 'GRAMS' | 'KILOGRAMS' — This field represents weight unit of measure of items that are ordered by cases and supporting priced by weight.
      - `purchaseOrderNumber` string — The Amazon purchase order number for this invoiced line item. Formatting Notes: 8-character alpha-numeric code. This value is mandatory only when invoiceType is Invoice, and is not required when invoiceType is CreditNote.
      - `hsnCode` string — HSN Tax code. The HSN number cannot contain alphabets.
      - `creditNoteDetails` CreditNoteDetails — References required in order to process a credit note. This information is required only if InvoiceType is CreditNote.
        - `referenceInvoiceNumber` string — Original Invoice Number when sending a credit note relating to an existing invoice. One Invoice only to be processed per Credit Note. This is mandatory for AP Credit Notes.
        - `debitNoteNumber` string — Debit Note Number as generated by Amazon. Recommended for Returns and COOP Credit Notes.
        - `returnsReferenceNumber` string — Identifies the Returns Notice Number. Mandatory for all Returns Credit Notes.
        - `goodsReturnDate` string, date-time — Defines a date and time according to ISO8601.
        - `rmaId` string — Identifies the Returned Merchandise Authorization ID, if generated.
        - `coopReferenceNumber` string — Identifies the COOP reference used for COOP agreement. Failure to provide the COOP reference number or the Debit Note number may lead to a rejection of the Credit Note.
        - `consignorsReferenceNumber` string — Identifies the consignor reference number (VRET number), if generated by Amazon.
      - `taxDetails` TaxDetails[] — Individual tax details per line item.
        - `taxType` 'CGST' | 'SGST' | 'CESS' | 'UTGST' | 'IGST' | 'MwSt.' | 'PST' | 'TVA' | 'VAT' | 'GST' | 'ST' | 'Consumption' | 'MutuallyDefined' | 'DomesticVAT', required — Type of the tax applied.
        - `taxRate` string — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
        - `taxAmount` Money, required — An amount of money, including units in the form of currency.
          - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
        - `taxableAmount` Money — An amount of money, including units in the form of currency.
          - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `chargeDetails` ChargeDetails[] — Individual charge details per line item.
        - `type` 'Freight' | 'Packing' | 'Duty' | 'Service' | 'SmallOrder' | 'InsurancePlacementCost' | 'InsuranceFee' | 'SpecialHandlingService' | 'CollectionAndRecyclingService' | 'EnvironmentalProtectionService' | 'TaxCollectedAtSource', required — Type of the charge applied.
        - `description` string — Description of the charge.
        - `chargeAmount` Money, required — An amount of money, including units in the form of currency.
          - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
        - `taxDetails` TaxDetails[] — Tax amount details applied on this charge.
          - `taxType` 'CGST' | 'SGST' | 'CESS' | 'UTGST' | 'IGST' | 'MwSt.' | 'PST' | 'TVA' | 'VAT' | 'GST' | 'ST' | 'Consumption' | 'MutuallyDefined' | 'DomesticVAT', required — Type of the tax applied.
          - `taxRate` string — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
          - `taxAmount` Money, required — An amount of money, including units in the form of currency.
            - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
            - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
          - `taxableAmount` Money — An amount of money, including units in the form of currency.
            - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
            - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
      - `allowanceDetails` AllowanceDetails[] — Individual allowance details per line item.
        - `type` 'Discount' | 'DiscountIncentive' | 'Defective' | 'Promotional' | 'UnsaleableMerchandise' | 'Special', required — Type of the allowance applied.
        - `description` string — Description of the allowance.
        - `allowanceAmount` Money, required — An amount of money, including units in the form of currency.
          - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
          - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
        - `taxDetails` TaxDetails[] — Tax amount details applied on this allowance.
          - `taxType` 'CGST' | 'SGST' | 'CESS' | 'UTGST' | 'IGST' | 'MwSt.' | 'PST' | 'TVA' | 'VAT' | 'GST' | 'ST' | 'Consumption' | 'MutuallyDefined' | 'DomesticVAT', required — Type of the tax applied.
          - `taxRate` string — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
          - `taxAmount` Money, required — An amount of money, including units in the form of currency.
            - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
            - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.
          - `taxableAmount` Money — An amount of money, including units in the form of currency.
            - `currencyCode` string, required — Three digit currency code in ISO 4217 format.
            - `amount` string, required — A decimal number with no loss of precision. Useful when precision loss is unacceptable, as with currencies. Follows RFC7159 for number representation. <br>**Pattern** : `^-?(0|([1-9]\d*))(\.\d+)?([eE][+-]?\d+)?$`.

## Response `200`

Success.

- SubmitInvoiceResponse — The response schema for the submitInvoice operation.
  - `payload` TransactionReference — The response payload for the SubmitShipmentConfirmations operation.
    - `transactionId` string — GUID assigned by Buyer to identify this transaction. This value can be used with the Transaction Status API to return the status of this transaction.
  - `errors` Error[] — A list of error responses returned when a request is unsuccessful.
    - `code` string, required — An error code that identifies the type of error that occurred.
    - `message` string, required — A message that describes the error condition.
    - `details` string — Additional details that can help the caller understand or fix the issue.

## Other responses

- `400` — Request has missing or invalid parameters and cannot be parsed.
- `401` — The request's Authorization header is not formatted correctly or does not contain a valid token.
- `403` — Indicates that access to the resource is forbidden. Possible reasons include Access Denied, Unauthorized, Expired Token, or Invalid Signature.
- `404` — The resource specified does not exist.
- `413` — The request size exceeded the maximum accepted size.
- `415` — The request payload is in an unsupported format.
- `429` — The frequency of requests was greater than allowed.
- `500` — An unexpected condition occurred that prevented the server from fulfilling the request.
- `503` — Temporary overloading or maintenance of the server.

---

[API](https://skmtc.net/aws-samples/apis/a-content-management-v2020-11-01.md) · [All operations](https://skmtc.net/aws-samples/apis/a-content-management-v2020-11-01/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aws-samples/a-content-management-v2020-11-01/revisions/815a5b6dbaa6/schema)
