# vendorInvoices_submitInvoices (https://sellersheetai.com/docs/mcp-api/tools/vendorInvoices_submitInvoices)

> Submit vendor invoices or credit notes to Amazon.

Access: **DESTRUCTIVE** · toolset amazon_sp · family sp.vendorInvoices

Amazon write; blocks until the transaction reaches Success or Failure. Amazon SP-API · submitInvoices · POST /vendor/payments/v1/invoices Amazon SP-API · getTransaction · GET /vendor/transactions/v1/transactions/{transactionId} Gate: approve — interactive: show the change (Amazon's preview first where one exists), wait for an explicit approve; autopilot: only when the seller's own words asked for this change; otherwise ask.

## Call it

MCP tool call:

```json
{
  "name": "vendorInvoices_submitInvoices",
  "arguments": {
    "store": "myStore-US",
    "invoices_payload": {}
  }
}
```

Tool API (early access — contact us):

```bash
curl -X POST https://api.sellersheetai.com/api/v1/tools/vendorInvoices_submitInvoices \
  -H "Authorization: Bearer $SELLERSHEET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"store":"myStore-US","invoices_payload":{}}'
```

## Arguments

| Name | Type | Required | Description |
|---|---|---|---|
| `store` | string | yes | the store ref `<store>-<CC>` (name-country, e.g. 'myStore-US') — one of get_user_context's store_refs, verbatim. |
| `invoices_payload` | object | yes | {"invoices": [Invoice, …]}. Per Invoice, required: invoiceType (Invoice \| CreditNote), id (your unique invoice or credit-note number — NEVER reused), date (ISO-8601, now or earlier), remitToParty (a Party — partyId, address, taxRegistrationDetails; full shape in the Body block below), invoiceTotal (Money {currencyCode ISO-4217, amount as a decimal string}; non-zero and equal to items + charges − allowances). Optional: items: [{itemSequenceNumber (int), amazonProductIdentifier (ASIN) or vendorProductIdentifier, invoicedQuantity {amount (non-zero int), unitOfMeasure Cases \| Eaches, unitSize}, netCost (Money), purchaseOrderNumber (8-char alphanumeric; required on an Invoice), hsnCode (India, digits), taxDetails, chargeDetails, allowanceDetails, creditNoteDetails (required on a CreditNote — {referenceInvoiceNumber, returnsReferenceNumber, goodsReturnDate, rmaId, debitNoteNumber})}]; billToParty (a Party); referenceNumber (India: the mandatory government ref); shipToParty; shipFromParty (required in India and the EU); paymentTerms {type Basic \| EndOfMonth \| FixedDate \| Proximo \| PaymentDueUponReceiptOfInvoice \| LetterofCredit, discountPercent, discountDueDays, netDueDays}; taxDetails (required in India): [{taxType CGST \| SGST \| CESS \| UTGST \| IGST \| MwSt. \| PST \| TVA \| VAT \| GST \| ST \| Consumption \| MutuallyDefined \| DomesticVAT, taxRate, taxAmount, taxableAmount}]; chargeDetails: [{type Freight \| Packing \| Duty \| Service \| SmallOrder \| InsurancePlacementCost \| InsuranceFee \| SpecialHandlingService \| CollectionAndRecyclingService \| EnvironmentalProtectionService \| TaxCollectedAtSource, description, chargeAmount, taxDetails}]; allowanceDetails: [{type Discount \| DiscountIncentive \| Defective \| Promotional \| UnsaleableMerchandise \| Special, description, allowanceAmount, taxDetails}]; additionalDetails: [{type SUR \| OCR \| CartonCount, detail, languageCode}]. Full tree: https://developer-docs.amazon.com/sp-api/docs/submit-invoices |

## Result

- `data.status` — SUCCESS, or Failure with data.errors [{code, message, details}] — fix them and resubmit with a NEW invoice id.
- `data.transactionId / data.raw` — the finished transaction (raw on success only).

## Body (Amazon schema; submitInvoices): {invoices: [Invoice]}, each item

- invoiceType*: Invoice | CreditNote id*: string date*: string (date-time) remitToParty*: {partyId*, address: {name*, addressLine1*, addressLine2, addressLine3, city, county, district, stateOrRegion, postalOrZipCode, countryCode*, phone}, taxRegistrationDetails: [{taxRegistrationType*, taxRegistrationNumber*}]} invoiceTotal*: {currencyCode, amount} + 10 more: referenceNumber, shipToParty, shipFromParty, billToParty, paymentTerms, taxDetails, additionalDetails, chargeDetails, allowanceDetails, items Full schema: the Docs link above.

## Gotchas

- India takes Invoice only (no CreditNote) and requires HSN, GST tax, shipFromParty and a 15-char GST id; Europe takes Invoice and CreditNote (PO number optional on a credit note) and requires VAT registration; North America takes Invoice only, tax optional. HTTP 502 = still Processing after 60 s; the error names the transactionId — check it with vendorTransactionStatus_getTransaction before resubmitting.