The fulfillment module polls Amazon for completed shipments and creates Item Fulfillment records in NetSuite. The template includes two fulfillment flows: the standard flow and a variant that also retrieves per-package tracking data.
Flow 1: Amazon (MCF) Shipment to NetSuite Fulfillment Add
This flow polls Amazon for fulfilled orders and creates Item Fulfillment records in NetSuite with tracking numbers. It handles partial fulfillments and multi-package shipments.
How the flow works
- Amazon MCF List Fulfillment Export (Export): Calls the Amazon listFulfillmentOrders API (GET /fba/outbound/2020-07-01/fulfillmentOrders?queryStartDate={lastExportDateTime}) in delta mode. Returns a list of MCF fulfillment orders that have had status changes since the last run.
- Amazon MCF Get Fulfillment Export (Lookup): For each fulfillment order ID, calls getFulfillmentOrder to retrieve the full fulfillment record including fulfilled items, quantities, shipment details, and tracking numbers.
- Create ItemFulfillment in NetSuite (Import): Creates a NetSuite Item Fulfillment record linked to the originating sales order with items shipped, quantities, tracking numbers, carrier information, and ship date.
Flow 2: Amazon (MCF) Shipment to NetSuite Fulfillment Add (with Package Info)
This variant adds an extra step to retrieve per-package tracking data from Amazon before creating the Item Fulfillment record in NetSuite. Use this flow when you need package-level detail (dimensions, weight, package number) in addition to standard tracking numbers.
How the flow works
- Amazon MCF List Fulfillment Export_HTTP (Export): Calls the same Amazon listFulfillmentOrders API (GET /fba/outbound/2020-07-01/fulfillmentOrders?queryStartDate={lastExportDateTime}) in delta mode.
- Amazon MCF Get Fulfillment Export (Lookup): Retrieves the full fulfillment order record per order ID.
- Amazon MCF Get Package Data (Lookup): For each package in the fulfillment shipment, calls the Amazon tracking API (GET /fba/outbound/2020-07-01/tracking?packageNumber={fulfillmentShipmentPackage.packageNumber}) to retrieve per-package tracking detail.
- Create ItemFulfillment in NS (Import): Creates the NetSuite Item Fulfillment record with all package-level data included.
Partial fulfillments
Both flows fully support partial fulfillments at the line item level and at the quantity level:
| Scenario | Behavior |
|---|---|
| Order has three items; Amazon ships the first two | An Item Fulfillment is created for the two shipped items. Sales order status changes to Partially Fulfilled. When the third ships, a second Item Fulfillment is created automatically on the next flow run. |
| Order has one item, quantity 10; Amazon ships the first seven | An Item Fulfillment is created for quantity 7. When the remaining 3 units ship, a second Item Fulfillment is created. |
| All items ship in one shipment | A single Item Fulfillment is created. Sales order status changes to Fulfilled. |
| Fill All Available policy; some items cancelled | Item Fulfillments are created only for the shipped items. Cancelled item lines remain open on the sales order. |
Fulfillments settings
Access and configure all settings from the Integration tile > Settings > Fulfillments before enabling the fulfillment flows.
| Setting (field label) | Type | Required | Description |
|---|---|---|---|
| Amazon Seller Fulfillment Order Id | Text | No | Provide an Amazon Seller Fulfillment Order ID and click Save to trigger an on-demand import of a specific shipment from Amazon into NetSuite, bypassing the scheduled delta run. Leave blank for normal scheduled operation. |
| Add shipments updated after | Datetime | No | Specify a date and time to filter fulfillment orders that were last updated after (or at) this time. An update is defined as any change in fulfillment order status, including the creation of a new fulfillment order. Used for backfill or one-time reconciliation runs. |
| Automatically assign Lot/Serialised numbers | Checkbox | No | When selected, automatically assigns Lot or Serial numbers to Serialized/Lot Numbered item types when creating Item Fulfillment records in NetSuite. Serial numbers created first, or Lot Item numbers nearing expiry (or created first if expiry is unavailable), are used for allocation. |
| Select inventory location present in NetSuite | Text | No | Enter the NetSuite inventory or fulfillment location internal ID to set at both the body and line level of the Item Fulfillment record when setting fulfillment inventory detail. |