v3

latestOpenAPI 3.1.02026-08-0619186200.1 KB
Webhooks

Shipment Notification

Once the order is fulfilled, ShipMonk can notify the 3rd party software of such event via webhook or Marketplace via direct integration. The payload consists of tracking and packing information.

Triggers for sending notification are:

  • once regular order is packed
  • batch is completed
  • wholesale order is picked up

Notification is sent with delay which can be set per each store in ShipMonk OMS.

Your endpoint URL can be set up in the store detail in ShipMonk OMS. Please note that Basic Auth (username and password) is supported only.

We expect the status code 200 in response. When we receive another status call, we will be re-trying it for the next 3 days.

To test it, place the order and submit it for fulfilment. You have to make sure the inventory is available and order is all right first (it has set the shipping service and the address is valid). In production the order is shipped by our warehouse employees, while for testing you will have to call our complete-order endpoint.

Edge cases:

  • If the order is big and cannot fit into a single packaging, we will send out multiple packages. Each package has its own tracking number inside of packages array.
  • If the inventory of any SKU is not available, it is possible to manually split the order in the ShipMonk app and then we send Shipment Notification per each shipment.
  • If the order is split and send out within multiple days, we send the Shipment Notification just once (when the first package is sent out)

fulfilled_quantity vs ordered_quantity: The value of these two fields might differ in case of partially fulfilled Orders. If a Product consists of 1x Item A and 1x Item B, when the customer orders 2 Products and the Shipment contains 1 piece of Item A and 2 pieces of Item B, then ordered_quantity = 2 but fulfilled_quantity = 1.

postWebhookorderShipmentNotification

Payload

order_keystring required

Client-supplied order key (external order identifier) of the shipped order.

parent_order_keystring nullable required

Key of the parent order when this order is part of a split or partial shipment; null for standalone orders.

order_numberstring required

ShipMonk internal order number of the shipped order.

warehousestring required

Code of the warehouse that fulfilled and shipped the order.

store_idstring required

Identifier of the store (sales channel or integration) the order belongs to.

servicestring nullable required

Carrier service level used for the shipment (e.g. Ground, Express); null when not applicable.

master_tracking_numberstring required

Primary tracking number of the shipment.

tracking_linkstring nullable required

ShipMonk tracking page URL for the shipment; null when unavailable.

estimated_shipping_costnumber double nullable required

Estimated shipping cost of the shipment in the account currency; null when not calculated.

carrier_tracking_urlstring nullable required

Tracking page URL hosted by the carrier for the shipment; null when unavailable.

carrier_alpha_codestring nullable required

Carrier SCAC (Standard Carrier Alpha Code); null when unknown.

carrier_trans_method_codestring nullable required

Carrier transportation method code describing the mode of transport; null when not provided.

bill_of_lading_numberstring nullable required

Bill of Lading (BOL) number for the shipment; null when not applicable.

master_bill_of_lading_numberstring nullable required

Master Bill of Lading (MBOL) number grouping multiple bills of lading; null when not applicable.

load_numberstring nullable required

Freight load number assigned to the shipment; null for non-freight shipments.

authorization_numberstring nullable required

Routing or freight authorization number for the shipment; null when none was assigned.

order_size'unknown' | 'regular' | 'oversized_item' | 'large' | 'extra_large' required

Response

Return a 2xx status to indicate that the data was received successfully