Order Status Updates (from Merchant)
UpdateOrderStatus
Merchant to Global‑e (Outbound)
This section details the steps required to perform updates from the merchant systems to Global-e (outbound)
Integration Overview
The UpdateOrderStatus
API lets you:
Cancel an order with a reason (and notify the customer accordingly)
Move an order to a processing status (used by Global‑e or specific cases not covered in this guide)
Based on this description, this guide focuses on cancelling orders prior to dispatch.
The following attributes are required in the system (OMS/ERP/MW) when executing the calls:
Global‑e order number (and not ecommerce platform or another system)
Status and reasons codes mapped on the Global‑e side (for example, for cancellation reasons)
Implementation
API Endpoint: UpdateOrderStatus
Call parameters
Parameters | |||
---|---|---|---|
MerchantGUID | - | - | Unique Merchant Identifier and API token Different for Test and Live environments |
OrderStatusDetails | OrderId | - | Global‑e Order ID |
Orderstatus | OrderStatusCode | Status code mapped on the Global‑e side | |
Name | Status name mapped on the Global‑e side | ||
OrderStatusReason | OrderStatusReasonCode | (optional) Reason code mapped on the Global‑e side | |
Name | (Optional) Reason name mapped on the Global‑e side |
SAMPLE
Parameters OrderStatus
{ "OrderId": "GE1235436GB", "OrderStatus": { "OrderStatusCode": "canceled", "Name": "canceled" }, "OrderStatusReason": { "OrderStatusReasonCode": "1010", "Name": "CustomerCancel" } }
API RESPONSE
If Success, ResponseInfo: (Reason is optional) { "Success": boolean, "Reason": "Operation description" } If Failure, ErrorInfo: { "Code": "error code" }
ORDER STATUS REASONS MANAGEMENT
Important
Reasons (in addition to statuses) must be mapped in the Global‑e configuration to send the appropriate notification to the customer between :
Cancellation because of out-of-stock
Cancellation at the customer’s request
Cancellation for technical reasons (default in case of no reason mapping declared)
UpdateOrderStatus
This API updates the order status on the Merchant’s site. Only order.OrderId
and order.StatusCode
members are mandatory for this method.
API URL
[POST]
https://www.merchant-site-domain.com/order-status-update-url
API Request Structure
Name | required | Type | Description |
---|---|---|---|
MerchantGUID | Yes | String | Unique identifier of the Merchant on Global-e. |
OrderId | Yes | String | Global‑e order unique identifier. |
MerchantOrderId | No | String | Order unique identifier on the Merchant’s site |
CartId | No | String | Identifier of the cart on the Merchant’s site originally specified in merchantCartToken argument for SendCart method for the cart converted to this order on Global‑e. |
CartHash | No | String | Cart hash originally specified in merchantCartHash argument for SendCart method for the cart converted to this order on Global‑e. |
StatusCode | No | String | Code denoting the order status on the Merchant’s site (to be mapped on the Global‑e side). |
CurrencyCode | No | String | 3-char ISO currency code for the order being posted. By default, this is set to the original Merchant’s currency. |
PriceCoefficientRate | No | Decimal | CountryCoefficient rate is applied to the prices in this order. |
RoundingRate | No | Decimal | The average conversion rate applied to the prices paid by the end customer, when calculating the prices paid by Global‑e to the Merchant in the original Merchant’s currency. This rate includes “FX conversion” and “marketing rounding” factors. |
UserId | No | String | Internal User identifier on the Merchant’s site originally specified in shippingDetails.UserId argument for SendCart method for the cart converted to this order on Global‑e. |
ShippingMethodCode | No | String | Code denoting the local shipping method selected from the list of available shipping options provided in shippingOptionsList argument for SendCart method for the cart converted to this order on Global‑e. |
ClearCart | No | Boolean | Indicates if the end customer’s cart must be cleared before this method finishes execution on the Merchant’s site. |
AllowMailsFromMerchant | No | Boolean | Indicates if the end customer has opted to receive emails from the Merchant in the Global‑e checkout. |
LoyaltyPointsSpent | No | Decimal | The number of loyalty points spent for this purchase. The existing loyalty points handling procedure must be applied to the end customer’s user account. Therefore, the “Loyalty points” type discount must not be applied to the order directly but can be used for display purposes elsewhere in the system (i.e. on the end user’s My Account page). |
LoyaltyPointsEarned | No | Decimal | The number of loyalty points to be earned for this purchase by the end customer on the Merchant’s site, as specified in the loyaltyPointsEarned argument for the SendCart method for the cart converted to this order on Global-e. |
LoyaltyCode | No | String | Loyalty code applicable to the Merchant’s site entered by the end customer in Global‑e checkout. |
SameDayDispatch | No | Boolean | Indicates if the end customer has requested “Same Day Dispatch” on Global‑e checkout. |
SameDayDispatchCost | No | Decimal | Cost of the “Same Day Dispatch” option selected by the end customer on Global‑e checkout, in the original Merchant’s currency. |
DoNotChargeVAT | No | Boolean | Indicates if the end customer hasn’t been charged VAT in Global‑e checkout, as specified in the doNotChargeVAT argument for the SendCart method for the cart converted to this order on Global‑e. |
IsFreeShipping | No | Boolean | Indicates if the Merchant offers free international shipping to the end customer, as specified in the IsFreeShipping argument for the SendCart method for the cart converted to this order on Global‑e. |
FreeShippingCouponCode | No | String | Merchant’s free shipping coupon code applied by the end customer, as specified in the FreeShippingCouponCode argument for the SendCart method for the cart converted to this order on Global‑e. |
ShipToStoreCode | No | String | Code denoting the Merchant’s store specified by the customer for “ship to shop” shipping destination (to be mapped on the Global‑e side). |
CustomerComments | No | String | Comments text entered by the end customer in Global‑e checkout. |
IsSplitOrder | No | Boolean | Indicates if the order should be handled as split order (i.e. without consolidation) |
OTVoucherCode | No | String | One-time voucher code used to place the order |
OTCurrencyCode | No | String | Currency of the one-time voucher code used to place the order |
OTVoucherAmount | No | Decimal | The amount taken off the voucher when applicable |
WebStoreCode | No | String | Code used on the merchant’s side to identify the web store, as specified in the WebStoreCode argument for the SendCart method for the cart converted to this order on Global‑e. |
Products | No | Product[] | The list of products being purchased |
Discounts | No | Discount[] | The list of discounts being applied to the order, according to the original list of discounts received in SendCart for this order, and to the Merchant shipping configuration on Global‑e. |
Markups | No | Discounts[] | The list of markups being applied to the order, according to the Merchant shipping configuration on Global‑e. Effectively Markup is a “negative Discount”. The main use case for Markups is when the end customer is charged in Global‑e checkout, a flat shipping rate, which is higher than the shipping rate, calculated for the respective order. In this case, Global‑e pays the difference to the merchant in the form of Markups applied to the order. Unlike Discounts, Markups may be only passed to the Merchant’s back-end ERP system for reconciliation purposes, and may not be displayed to the end customer. |
Customer | No | Customer | The paying customer’s preferences (Global-e acts as a paying customer). |
PrimaryBilling | No | CustomerDetails | Primary customer’s billing details. Primary customer denotes the paying (Global‑e) customer unless Customer.IsEndCustomerPrimary is not set to TRUE. Note that all string attributes of the end customer’s details are indicated in the URL-encoded form. Therefore, if the Customer.IsEndCustomerPrimary is TRUE then all string attributes in PrimaryBilling are URL encoded. |
PrimaryShipping | No | CustomerDetails | Primary customer’s shipping details. Primary customer denotes the paying (Global‑e) customer unless Customer.IsEndCustomerPrimary is not set to TRUE. Note that all string attributes of the end customer’s details are indicated in the URL-encoded form. Therefore, if the Customer.IsEndCustomerPrimary is TRUE then all string attributes in PrimaryShipping are URL encoded. |
PaymentDetails | Yes | PaymentDetails | The paying customer’s payment details. |
SecondaryBilling | No | CustomerDetails | Secondary customer’s billing details. Secondary customer denotes the end customer who has placed the order with Global‑e checkout unless Customer.IsEndCustomerPrimary is not set to TRUE. Note that all string attributes of the end customer’s details are indicated in the URL-encoded form. Therefore, if the Customer.IsEndCustomerPrimary is FALSE then all string attributes in SecondaryBilling are URL encoded. |
SecondaryShipping | No | CustomerDetails | Secondary customer’s shipping details. Secondary customer denotes the end customer who has placed the order with Global‑e checkout unless Customer.IsEndCustomerPrimary is not set to TRUE. Note that all string attributes of the end customer’s details are indicated in the URL-encoded form. Therefore, if Customer.IsEndCustomerPrimary is FALSE then all string attributes in SecondaryShipping are URL encoded. |
InternationalDetails | No | InternationalDetails | Details referring to the end customer’s order placed on the Global‑e side. These details are applicable only to the Merchants dealing with international customers’ support themselves. |
DiscountedShippingPrice | No | Decimal | The shipping price paid by the customer converted to the merchant’s currency. Total Shipping price reducing Order Discounts (InternationalDetails.DiscountedShippingPrice price converted to the merchant currency). |
PrePayOffered | No | Boolean | Indicates if the prepayment option for duties and taxes was offered to the customer |
IsReplacementOrder | No | Boolean | Indicates if the order is a replacement. |
OriginalOrder | No | OriginalOrder | Details referring to the original order if the current order is a replacement. |
TotalDutiesAndTaxesPrice | No | Decimal | Total Duties & Taxes value including Customs Clearance Fees, in the merchant currency. This amount is the total amount, regardless of whether the customer or the merchant paid it. |
USSalesTax | No | Decimal | Sales tax value for USA in the merchant currency. This value is included in TotalDutiesAndTaxesPrice. |
CCFPrice | No | Decimal | Customs Clearance Fees (CCF), in the merchant currency. |
CustomerDTBreakdown | No | DTBreakdown | Contains the duties and taxes parts the customer paid for the order. |
MerchantDTBreakdown | No | DTBreakdown | Contains the duties and taxes parts the merchant subsidized for the order. |
OrderPaymentMethods | No | OrderPaymentMethod[] | List of payment methods the customer use (Credit card, Gift Cards) |
OrderDocuments | No | OrderDocument[] | Always contains a single document - it can be either a VAT Invoice or a Customer Receipt, depends if it is within the EU or not. |
TotalDutiesPaidByCustomerPrice | No | Decimal | The total amount of duties paid by the customer in the merchant’s currency. |
OrderCreationSource | No | Int64 | Possible values: 0 or 1 0 – GECheckout 1 - Marketplace |
API Response Structure
ResponseInfo
Name | required | Type | Description |
---|---|---|---|
InternalOrderId | No* (Optional in case of error, failure or if the action is not related to a specific order) | String | Order unique identifier on the Merchant’s site |
OrderId | No | String | Order identifier on the Merchant’s site used for display and reporting purposes only. Unlike InternalOrderId, this identifier is not necessarily unique over time, as the Merchant’s site may potentially reuse it (for example after deleting the old order having the same OrderId). |
StatusCode | No* (Optional in case of error or failure) | String | Code denoting the order status on the Merchant’s site (to be mapped on the Global‑e side). |
PaymentCurrencyCode | No | String | 3-char ISO currency code for the order (if payment was processed in the respective API method call). |
PaymentAmount | No | String | The total payment amount in PaymentCurrency charged for the order (if payment was processed in the respective API method call). |
Success | Yes | Bool | Indicates if the call has succeeded. FALSE denotes an error or failure. |
ErrorCode | No | String | Error code to be returned when an error occurs. |
Message | No | String | Optional response message. In case of an error, this property indicates the error message text. |
Description | No | String | Optional response description. In case of an error, this property indicates the error message description. |
API Request Sample
{ "OrderId": "GE10047946955SG", "StatusCode": "CANCELLED", "MerchantGUID": "0511db1d-cdc6-4e86-a5f1-64dc648348a7", "CartId": "52c615001b0378f653faea0995", "MerchantOrderId": "00024345", "MerchantInternalOrderId": "00024345", "PriceCoefficientRate": 1.000000, "CartHash": "ICEzF5/iTu0GhveFBZmAb1K/UQ2moPpHD/PznED/VyE=", "WebStoreCode": "shopDisneyAP", "WebStoreInstanceCode": "www.qa.shopdisney.asia", "DiscountedShippingPrice": 7.12, "InternationalDetails": { "CurrencyCode": "SGD", "TotalPrice": 29.90, "TransactionCurrencyCode": "SGD", "TransactionTotalPrice": 29.9000, "TotalShippingPrice": 4.1600, "SameDayDispatchCost": 0.0000, "TotalCCFPrice": 0.0000, "TotalDutiesPrice": 0.000000000, "USSalesTax": 0.0, "ShippingMethodCode": "STANDARD_APAC", "ShippingMethodName": "Janio-GlobalE", "PaymentMethodCode": "1", "PaymentMethodName": "Visa", "CardNumberLastFourDigits": "1111", "ExpirationDate": "2030-3-31", "DutiesGuaranteed": false, "OrderTrackingNumber": null, "OrderTrackingUrl": "https%3a%2f%2fwww2.bglobale.com%2fOrder%2fTrack%2fmZVW%3fOrderId%3dGE10047946955SG%26ShippingEmail%3daleena.paul.-nd%40disney.com", "OrderWaybillNumber": null, "ShippingMethodTypeCode": "Standard", "ShippingMethodTypeName": "Standard Courier", "DeliveryDaysFrom": 2, "DeliveryDaysTo": 3, "ConsignmentFee": 0.0000, "SizeOverchargeValue": 0.0000, "RemoteAreaSurcharge": 0.0000, "DiscountedShippingPrice": 10.0000, "CashOnDeliveryFee": 0.0, "ParcelsTracking": [ ], "TotalVATAmount": 1.95, "ShippingVATRate": 7.0000, "ShippingMethodStatusCode": "Undefined", "ShippingMethodStatusName": "undefined", "ShipmentStatusUpdateTime": null, "ShipmentLocation": null }, "GiftCards": null, "DeclarativeShippingPriceInCustomerCurrency": null, "TotalValueForCustoms": null, "TaxCalculationRule": null }
API response sample
Success example
{ "action": "Globale-OrderUpdateStatus", "queryString": "", "locale": "en_SG", "InternalOrderId": "00024345", "OrderId": "00024345", "Success": true, "ErrorCode": null, "Message": null, "Description": null }
Failure example
{ " Success ": "false ", "Message": "error message", "Description": "error description" }