fbaOutbound_createFulfillmentOrder

Create a Multi-Channel Fulfillment order — ships FBA inventory to a non-Amazon customer address.

writeAmazon Seller (SP-API)sp.fulfillmentOutbound_2020-07-01

IRREVERSIBLE spend: run fbaOutbound_getFulfillmentPreview first for the fees and isFulfillable, and confirm with the human before submitting. Amazon SP-API · createFulfillmentOrder · POST /fba/outbound/2020-07-01/fulfillmentOrders Gate: commit, fee-bearing — interactive: restate the amount, wait for a typed CONFIRM; autopilot: only within the seller's instruction and stated limits; otherwise ask.

Call it

In an AI client (MCP)

tools/call
{
  "name": "fbaOutbound_createFulfillmentOrder",
  "arguments": {
    "store": "myStore-US",
    "seller_fulfillment_order_id": "<seller_fulfillment_order_id>",
    "displayable_order_id": "<displayable_order_id>",
    "displayable_order_date": "<displayable_order_date>",
    "displayable_order_comment": "<displayable_order_comment>",
    "shipping_speed_category": "Standard",
    "destination_address": {},
    "items": []
  }
}

From code (Tool API)

curl -X POST https://api.sellersheetai.com/api/v1/tools/fbaOutbound_createFulfillmentOrder \
  -H "Authorization: Bearer $SELLERSHEET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"store":"myStore-US","seller_fulfillment_order_id":"<seller_fulfillment_order_id>","displayable_order_id":"<displayable_order_id>","displayable_order_date":"<displayable_order_date>","displayable_order_comment":"<displayable_order_comment>","shipping_speed_category":"Standard","destination_address":{},"items":[]}'
Early access — the Tool API is open on request, contact us.

Arguments

NameTypeDescription
storerequiredstringthe store ref `<store>-<CC>` (name-country, e.g. 'myStore-US') — one of get_user_context's store_refs, verbatim.
seller_fulfillment_order_idrequiredstringyour unique order id (≤40 chars).
displayable_order_idrequiredstringthe customer-facing order id on the packing slip (≤40).
displayable_order_daterequiredstring · date-timeISO-8601 timestamp shown to the customer.
displayable_order_commentrequiredstringtext on the recipient materials (≤750).
shipping_speed_categoryrequiredstringrequired — the speed to ship at; ScheduledDelivery also needs delivery_window. Allowed: Standard | Expedited | Priority | ScheduledDelivery.StandardExpeditedPriorityScheduledDelivery
destination_addressrequiredobject{name, addressLine1, postalCode, countryCode (ISO alpha-2)} required, plus the usual address fields.
itemsrequiredobject[][{sellerSku (≤50), sellerFulfillmentOrderItemId (≤50, your own item id), quantity (int)} required; giftMessage (≤512), displayableComment (≤250), fulfillmentNetworkSku, perUnitDeclaredValue, perUnitPrice, perUnitTax (each a Money {currencyCode, value as a decimal string}) optional].
fulfillment_actionstringship now or hold — Hold places an order hold, released later with fbaOutbound_updateFulfillmentOrder fulfillment_action Ship; Amazon cancels a held order after 14 days. Default: Ship.ShipHold
fulfillment_policystringwhat happens to unfulfillable items — FillOrKill cancels the order if any item is unfulfillable; FillAll ships every fulfillable item and keeps the order open until the rest ship or are cancelled (on Ship it turns Unfulfillable or CompletePartialled after 24 h); FillAllAvailable ships what is available now. Default: FillOrKill.FillOrKillFillAllFillAllAvailable
cod_settingsobject{isCodRequired (bool, required), codCharge, codChargeTax, shippingCharge, shippingChargeTax (each a Money)}.
ship_from_country_codestringISO alpha-2 origin country.
notification_emailsstring[]addresses to notify (each ≤64).
feature_constraintsobject[][{featureName, featureFulfillmentPolicy}] — featureName: BLOCK_AMZL (no Amazon Logistics; surcharge) | BLANK_BOX | OVERBOX | PACKING_SLIP | SIGNATURE_CONFIRMATION (US only; fee) | DELIVER_TOGETHER; featureFulfillmentPolicy: Required (reject the order if unavailable) | NotRequired.
delivery_windowobject{startDate, endDate} for ScheduledDelivery.
delivery_preferencesobject{deliveryInstructions (≤250), dropOffLocation: {type, attributes}} — JP marketplace only, applied best-effort.
payment_informationobject[][{paymentTransactionId, paymentMode, paymentDate (ISO-8601)}], all three required per record; required for India orders (as is items[].perUnitDeclaredValue).

Result

Every tool answers {notification, data, human_action}; data carries:

  • data.sellerFulfillmentOrderId — the order to poll with fbaOutbound_getFulfillmentOrder — Amazon returns no other payload.

Body (Amazon schema)

marketplaceId: string
sellerFulfillmentOrderId*: string (max 40 chars)
displayableOrderId*: string (max 40 chars)
displayableOrderDate*: string (date-time)
displayableOrderComment*: string (max 750 chars)
shippingSpeedCategory*: Standard | Expedited | Priority | ScheduledDelivery
deliveryWindow: {startDate*, endDate*}
destinationAddress*: {name*, addressLine1*, addressLine2, addressLine3, city, districtOrCounty, stateOrRegion, postalCode*, countryCode*, phone}
deliveryPreferences: {deliveryInstructions (max 250 chars), dropOffLocation: {type*, attributes}}
deliveryPreferences.dropOffLocation.type: FRONT_DOOR | DELIVERY_BOX | GAS_METER_BOX | BICYCLE_BASKET | GARAGE | RECEPTIONIST | FALLBACK_NEIGHBOR_DELIVERY | DO_NOT_LEAVE_UNATTENDED
fulfillmentAction: Ship | Hold
fulfillmentPolicy: FillOrKill | FillAll | FillAllAvailable
codSettings: {isCodRequired*, codCharge: {currencyCode*, value*}, codChargeTax: {currencyCode*, value*},
  shippingCharge: {currencyCode*, value*}, shippingChargeTax: {currencyCode*, value*}}
shipFromCountryCode: string
notificationEmails: [string] (max 64 chars)
featureConstraints: [{featureName, featureFulfillmentPolicy: Required | NotRequired}]
items*: [{sellerSku* (max 50 chars), sellerFulfillmentOrderItemId* (max 50 chars), quantity*, giftMessage (max 512 chars), displayableComment (max 250 chars), fulfillmentNetworkSku,
  perUnitDeclaredValue: {currencyCode*, value*}, perUnitPrice: {currencyCode*, value*}, perUnitTax:
    {currencyCode*, value*}}]
paymentInformation: [{paymentTransactionId*, paymentMode*, paymentDate*}]

On this page

Actions

View as Markdown

Ask an assistant

Ask ChatGPTAsk Claude