Skip to main content

Webhooks: Business

Business webhooks send Amazon events for your Sellers and Vendors, such as order, listing, offer, inventory and shipment changes. In DataDoe, their webhook type is Amazon.

Read Webhooks: Introduction first. It covers setup, target URL requirements, security, the request body and failed deliveries for every webhook type. For free notifications about your Organization, use Webhooks: Platform.

Who can manage Business webhooks?

Users with the Webhooks permission at Read and write can create and manage Business webhooks. Each webhook needs at least 1 Seller or Vendor from your Organization. If you remove a Seller or Vendor from DataDoe, it is removed from the webhook the next time someone saves the webhook.

Each webhook has an execution owner. By default, it is the user who created the webhook. DataDoe delivers events only while the owner has the Webhooks permission and access to the webhook's Sellers and Vendors. An Admin can choose another user or a service account in Run as.

Who can deliver buyer information?

AMAZON_ORDER_BUYER_INFO_UPDATE and AMAZON_ORDER_FULL_BUYER_INFO require Amazon PII Data Access for the Organization and the execution owner's Access PII data permission. Creating, editing or resuming a buyer-information webhook checks this access for the editor and the execution owner.

What do Business webhooks cost?

Each delivered message costs 0.05 AI Tokens. DataDoe charges the tokens after your endpoint confirms the request with a 2xx status. High-volume message types can deliver many events. See Subscription and pricing.

When does DataDoe pause a Business webhook?

DataDoe pauses the webhook and sends none of the messages in that request when:

  • a delivery fails, as described in Webhooks: Introduction
  • your AI Token balance cannot cover all messages in the request
  • the execution owner loses the Webhooks permission, access to the webhook's Sellers and Vendors, or the PII access a buyer-information type needs

DataDoe emails the active Organization Admins after a failed delivery or when tokens run out. It does not send an email when access is lost. Adding tokens does not resume the webhook. After you fix the cause, select Resume in Integrations > Webhooks (opens in a new tab). Events from the paused period are not delivered. If the owner lost access, an Admin can choose another owner in Run as and resume the webhook.

How does DataDoe group messages?

DataDoe groups Amazon events into requests of up to 100 messages. Grouping can delay a message by up to about 5 minutes. Each request goes to one webhook.

Which message types are available?

Message typeDescription
AMAZON_ORDER_UPDATEAn Amazon order was created or updated.
AMAZON_ORDER_BUYER_INFO_UPDATEBuyer or recipient information for an Amazon order was updated.
AMAZON_ORDER_FULLSent once when an Amazon order reaches an unshipped status, or already shipped, and the orders report is available. Not real-time.
AMAZON_ORDER_FULL_BUYER_INFOSame as AMAZON_ORDER_FULL, plus buyer and recipient details. Requires PII access. Not real-time.
AMAZON_ACCOUNT_STATUS_CHANGEDThe status of an Amazon selling account changed.
AMAZON_ANY_OFFER_CHANGEDOffer information for an item on an Amazon marketplace changed. High volume.
AMAZON_B2B_ANY_OFFER_CHANGEDBusiness offer information for an item changed. High volume.
AMAZON_BRANDED_ITEM_CONTENT_CHANGEContent for an item associated with a registered brand changed. Brand Registry only.
AMAZON_DETAIL_PAGE_TRAFFIC_EVENTTraffic on an Amazon product detail page changed. High volume.
AMAZON_FBA_OUTBOUND_SHIPMENT_STATUSThe status of an outbound Fulfillment by Amazon shipment changed. Brazil FBA Onsite only.
AMAZON_FULFILLMENT_ORDER_STATUSAn Amazon Multi-Channel Fulfillment order, shipment, or package changed status. Seller Central only. DataDoe subscribes automatically.
AMAZON_FEE_PROMOTIONAn Amazon fee promotion became available or changed.
AMAZON_ITEM_INVENTORY_EVENT_CHANGEInventory information for an Amazon item changed.
AMAZON_ITEM_SALES_EVENT_CHANGESales information for an Amazon item changed. High volume.
AMAZON_ITEM_PRODUCT_TYPE_CHANGEThe product type assigned to an Amazon item changed. Brand Registry only.
AMAZON_LISTINGS_ITEM_STATUS_CHANGEThe status of an Amazon listings item changed.
AMAZON_LISTINGS_ITEM_ISSUES_CHANGEIssues associated with an Amazon listings item changed.
AMAZON_LISTINGS_ITEM_MFN_QUANTITY_CHANGEThe merchant-fulfilled quantity for a listings item changed.
AMAZON_PRICING_HEALTHAn Amazon offer became ineligible for the Featured Offer because of an uncompetitive price.
AMAZON_TRANSACTION_UPDATEAmazon transaction information became available or changed.
AMAZON_FBA_INVENTORY_AVAILABILITY_CHANGESFulfillment by Amazon inventory availability changed.
AMAZON_SHIPMENT_TRACKING_MILESTONE_CHANGEDAn Amazon Tracking API shipment milestone changed. Available for the US Tracking API. Requires a subscription for each tracking identifier. DataDoe does not subscribe automatically.

What is in a Business webhook message?

Each message uses the request body described in Webhooks: Introduction. The webhook catalog shows the full schema of each message type.

The 18 Selling Partner API (SP-API) notification message types share a stable contract. Their messageSummary always includes marketplaceId, sellerOrVendorId, spApiNotificationId, spApiNotificationType, and eventTimeUtc. It can also include marketplaceCountryCode, marketplaceCountryName, sellerOrVendorName, and marketplaceSellerId. Their messageData includes the Amazon notificationMetadata and the payload routed to the selected Seller or Vendor connection. The order message types retain their order-specific schemas.

Which order webhook should I use?

WebhookWhen it's sentPayloadPII
AMAZON_ORDER_UPDATEEvery order change, near real-timeSKU and quantity, plus the raw notificationNo
AMAZON_ORDER_BUYER_INFO_UPDATEAfter the PII fetchBuyer and recipient detailsYes
AMAZON_ORDER_FULLOnce, at unshipped (or shipped), after the orders reportFull order and line items, including COGS when presentNo
AMAZON_ORDER_FULL_BUYER_INFOSame as AMAZON_ORDER_FULL, after buyer information is availableFull order and line items, plus buyer infoYes

AMAZON_ORDER_FULL and AMAZON_ORDER_FULL_BUYER_INFO are sent once per order. Later status changes do not send them again. Use AMAZON_ORDER_UPDATE for those changes. DataDoe checks for new orders about once an hour. An order that ships before a check sees it unshipped, which is common for FBA orders, is still sent once, with its shipped status. Orders last updated more than 7 days ago are not sent. Sellers only: the full payload comes from the Seller Central orders report. AMAZON_ORDER_FULL_BUYER_INFO also needs PII access.

How do I subscribe to shipment tracking updates?

DataDoe does not subscribe to shipment tracking automatically. Before you can receive AMAZON_SHIPMENT_TRACKING_MILESTONE_CHANGED events, start an AMAZON_SHIPMENT_TRACKING_SUBSCRIBE Action for each tracking identifier. This Action is available to Sellers and Vendors on the US Tracking API only.

In MCP, use actions_details_schema_get to load the Action details, then call actions_start. Each entry in trackingIdentifiers must contain exactly one identifier field. Use proNumber for the PRO number assigned by the freight carrier, and keep any leading zeros. For example:

json
1{
2    "type": "AMAZON_SHIPMENT_TRACKING_SUBSCRIBE",
3    "sellerOrVendorId": "YOUR_SELLER_OR_VENDOR_ID",
4    "details": {
5        "trackingIdentifiers": [
6            {
7                "carrierTracking": {
8                    "trackingNumber": "YOUR_TRACKING_NUMBER"
9                }
10            }
11        ]
12    }
13}

A freight PRO number uses the same Action. Include only proNumber:

json
1{
2    "type": "AMAZON_SHIPMENT_TRACKING_SUBSCRIBE",
3    "sellerOrVendorId": "YOUR_SELLER_OR_VENDOR_ID",
4    "details": {
5        "trackingIdentifiers": [
6            {
7                "proNumber": "0012345678"
8            }
9        ]
10    }
11}

After Amazon accepts the subscription, create a DataDoe webhook and select AMAZON_SHIPMENT_TRACKING_MILESTONE_CHANGED as a message type. See Actions for the full Action workflow and the REST API option.

How do I receive Multi-Channel Fulfillment updates?

Select AMAZON_FULFILLMENT_ORDER_STATUS when you create or edit a webhook, then choose the Seller accounts that should receive events. DataDoe subscribes those Seller accounts to Amazon's FULFILLMENT_ORDER_STATUS notification automatically. You do not subscribe to each order, shipment, or tracking number. This coverage is for Seller Central Multi-Channel Fulfillment in North America, Europe, and the Far East. It is not the Brazil FBA Onsite webhook (AMAZON_FBA_OUTBOUND_SHIPMENT_STATUS) and it is not limited to the US Tracking API.

Amazon sends three event kinds in payload version 2026-07-04. messageData.payload.eventType tells you which kind arrived:

eventTypeWhat changedIdentifiers in the payload
ORDER_STATUS_CHANGEDFulfillment order status, including PROCESSING, COMPLETE, COMPLETE_PARTIAL, CANCELLED, UNFULFILLABLE, and INVALID.order.orderId and order.status. Line items include identifiers, SKUs, and quantities when Amazon sends them.
SHIPMENT_STATUS_CHANGEDShipment status, including PROCESSING, SHIPPED, and CANCELLED.order.orderId and order.shipments[].amazonShipmentId, plus shipped items and quantities. Package identifiers are included when Amazon sends them.
SHIPMENT_PACKAGE_STATUS_CHANGEDPackage delivery status, including IN_TRANSIT, OUT_FOR_DELIVERY, DELAYED, DELIVERED, UNDELIVERABLE, and EXPIRED.order.orderId, shipment id, and packages[].packageId.

Every delivery also includes the DataDoe Organization, Seller context, Amazon eventTimeUtc, and spApiNotificationId. Use messageId or spApiNotificationId to ignore a repeated delivery. Carrier tracking numbers, Amazon tracking numbers, and estimated delivery times appear only when Amazon includes them. Returns are not part of this notification. Orders created outside DataDoe are included when Amazon sends a notification for that Seller.

Enable the Multi-Channel Fulfillment coverage table (MCF Fulfillment Coverage) when you also want confirmed shipped units in DataDoe. The table keeps the latest shipped notification for each shipment item. It is not profit. External store sales, product cost, and Amazon fees are unavailable or omitted there. An omitted amount is not zero.