Merchant Fulfillment API
Learn how to use the Merchant Fulfillment API.
You use the Merchant Fulfillment API to build applications for sellers to use Amazon Buy Shipping services to purchase shipping for non-Prime and Prime orders.
Release notes
To learn more about the terms that are used in this guide, refer to Terminology.
Use cases
The following use case examples are available for the Merchant Fulfillment API v0:
- Fulfill seller-fulfilled Prime and non-Prime orders: Identify Prime and non-Prime orders and create shipments.
- Cancel a shipment: Use the
cancelShipment
operation. - Manipulate shipping labels: Extract document data from a compressed file and reprint a shipping label.
- Include additional seller input data: Provide additional seller inputs for shipment services that require them.
- Subscribe to MFN notifications: Use the Selling Partner API for Notifications to subscribe to notifications that are relevant to a selling partner's business.
Roles
cancelShipment
Attribute | Value |
---|---|
Regions | NA, EU, FE |
Required roles (need at least one) | Direct to Consumer Shipping (Restricted) |
createShipment
Attribute | Value |
---|---|
Regions | NA, EU, FE |
Required roles (need at least one) | Direct to Consumer Shipping (Restricted) |
getAdditionalSellerInputs
Attribute | Value |
---|---|
Regions | NA, EU, FE except where noted |
Required roles (need at least one) | Buyer Communication (NA, FE only) Direct to Consumer Shipping (Restricted) |
getEligibleShipmentServices
Attribute | Value |
---|---|
Regions | NA, EU, FE |
Required roles (need at least one) | Direct to Consumer Shipping (Restricted) |
getShipment
Attribute | Value |
---|---|
Regions | NA, EU, FE |
Required roles (need at least one) | Direct to Consumer Shipping (Restricted) |
Error codes
The following table describes the Merchant Fulfillment error codes.
Error code | HTTP status code | Description |
---|---|---|
InsufficientFunds | 400 | The requested shipping label purchase was rejected because of insufficient funds in the seller's account. |
InvalidRequest | 400 | Request has missing or invalid parameters and cannot be parsed. |
InvalidShipFromAddress | 400 | The specified ShipFromAddress value is invalid. Specify a valid address. |
InvalidShippingServiceOfferId | 400 | The specified ShippingServiceOfferId value is invalid. Specify a ShippingServiceOfferId value returned by a previous call to the getEligibleShipmentServices operation. |
LabelCancelWindowExpired | 400 | The cancellation window for requesting a label refund has expired. Cancellation policies vary by carrier. For more information about carrier cancellation policies, refer to the Seller Central Help Hub for your marketplace. |
LabelFormatNotSupported | 400 | The requested LabelFormat does not match the available formats. |
ShipmentAlreadyExists | 400 | One or more items specified in a call to the createShipment operation have already shipped. Specify only unshipped items. A ShipmentId is returned in the Message element of the error message for each specified item that has already shipped. |
ShipmentRequestDetailsTooRestrictive | 400 | The specified ShipmentRequestDetails and ShippingServiceI values are so restrictive that no shipping service offer is available that can fulfill the request. Try calling the createShipment operation again with less restrictive values, or first call the getEligibleShipmentServices operation to check if there are any shipping service offers available that match the ShipmentRequestDetails and ShippingServiceId values that you specify. |
ShippingServiceOfferNotAvailable | 400 | The specified ShippingServiceOfferId value is no longer valid. This could be because the shipping rate changed since you received the ShippingServiceOfferId value with a previous call to the getEligibleShipmentServices operation. Call the getEligibleShipmentServices operation again to get a new ShippingServiceOfferId value. |
InvalidState | 404 | The request cannot be applied to the shipment in its current state. For example, a shipment in the RefundApplied state cannot be canceled. |
ItemsNotInOrder | 404 | Items specified in a call to the createShipment operation are not part of the order specified in the same call. |
RegionNotSupported | 404 | The specified order is from a marketplace where the Merchant Fulfillment service is not supported. |
ResourceNotFound | 404 | The specified resource (such as ShipmentId or AmazonOrderId ) does not exist. |
ShippingServiceNotAvailable | 404 | The specified shipping service does not exist or is not available for the specified parameters (for example, Weight). |
Updated 4 days ago