Shipping Methods
GetShippingDetails API Structure
Retrieves shipping details per cart or mini cart and product page.
Method/URL
POST https://{globale_api_domain}/ShippingDetails/GetShippingDetails
Parameters
Request URL Parameters
Name | Type | Description | Mandatory |
---|---|---|---|
merchantGUID | String | Unique Merchant Identifier and API token. The Merchant Identifier is different for test and live environments. Instead implement JWT authentication. | No, if used for the JWT implementation (since it has been used in the Authorization and UserName headers) |
Request Body Parameters
Name | Type | Description | Mandatory |
---|---|---|---|
destinationCountry | String | The destination country Length: 2-3 letters (both ISO-2 and ISO-3 are supported) If empty, the API returns a list of shipping rates for all countries configured in the Global‑e System. Example: US or USA for the United States | No |
currencyCode | String | The country's currency code. Length: 3 letters Example: CAD , USD , ILS , EUR | Yes |
amount | Decimal (Float) | The shipping cost This number can contain up to two digits after the decimal point Example: 50.30 | Yes |
productCodes | Array | The unique product reference (SKU, EAN, Barcode, and more.)
| No |
Response
The API response can include up to two objects per destination:
Object with the cheapest estimated shipping cost for the submitted currency and amount value
Object with the Free Shipping threshold range (where applicable).
The returned data is determined by the submitted amount, that is, the response only returns a shipping service for which the amount passed in the request is greater than or equal to the minimum flat shipping rate range, and lower than the maximum flat shipping rate range.
Minimum flat shipping rate range ≤ product/cart amount < maximum flat shipping rate range.
Response Parameters
NameName | Type | Description |
---|---|---|
destinationCountry | String | The destination country's ISO code Length: 2/3-letters ISO country code based on the request value Example: ISR, IL, USA, US |
status | String | Shipping methods availability
|
shippingRates | Array | This array contains up to two shipping service objects. These two shipping rate objects that can be returned are as per the Shipping Details API logic. For more information, see Shipping Details. If the cheapest shipping service is the first to be subject to free shipping, only one The
|
Response Example
[ { "destinationCountry": "USA", "status": "active", "shippingRates": [ { "minOrderSubtotal": 0.0000, "maxOrderSubtotal": 100.0000, "shippingCost": 15.0000, "shippingCostCurrency": "USD", "shippingPriority": "Express Courier (Air)", "estimatedDeliveryDays": "1-3", "specialOfferExpiryDate": null }, { "minOrderSubtotal": 100.0000, "maxOrderSubtotal": 9999999.0000, "shippingCost": 5.0000, "shippingCostCurrency": "USD", "shippingPriority": "Express Courier (Air)", "estimatedDeliveryDays": "1-3", "specialOfferExpiryDate": null } ] } ]
GetShippingDetailsExtended
This API extends the GetShippingDetails
API to provide all flat shipping rate thresholds for all shipping services related to a product.
The GetShippingDetailsExtended
API lets you:
Get all shipping rates available for a given country
Get the rates for all specific shipping service levels
Revert to all shipping rates available, for instance, if the request passed with amount = 0.
Method/URL
http://{base_URL_GE}/ShippingDetails/GetShippingDetailsExtended
Parameters
Request
Parameter | Type | Description | Mandatory |
---|---|---|---|
| Decimal (Float) | The shipping cost This number can contain up to two digits after the decimal point Example: 50.30 | Yes |
| String | Determines the shipping method description language. Default: en-GB | No |
| String | The currency of the value passed in the Length: 3 letters Example: CAD , USD , ILS , EUR | Yes |
| String | The destination country Length: 2-3 letters (both ISO-2 and ISO-3 are supported) If empty, the API returns a list of shipping rates for all countries configured in the Global‑e System. Example: US or USA for the United States | No |
| Array | The unique product reference (SKU, EAN, Barcode, and more.)
| No |
| Integer | Supported Service levels (default) = Revert to all shipping rates available, for instance, if the request passed with amount = 0.
Default output for all service levels (express / standard ) | No |
Response
Parameter | Type | Description |
---|---|---|
| Decimal | Double representation of range minimum value Maximum order/product price for a price range (includes 4 decimals) Example: 150.0000 |
| Decimal | Double representation of range minimum value Minimum order/product price for a price range (includes 4 decimals) Example: 100.0000 |
| String | The merchant's default currency for the destination (3 letters ISO code) Example: EUR, USD, ILS |
| Decimal | The shipping costs for the order/product price range (includes 4 decimals) Example: 5.0000 |
| String | The name of the shipping method type name |
| String | The type of shipping service Shipping types: standard, express, tracked, and more. Example: Standard, Express Courier (Air) |
| Array | This array contains up to two shipping service objects. These two shipping rate objects that can be returned are as per the Shipping Details API logic. For more information, see Shipping Details. If the cheapest shipping service is the first to be subject to free shipping, only one The
|
Objects for GetShippingDetailsExtended API
Examples
Request
Example of a request to return all services to all countries with a localized name in Spanish:
{ "Amount": "100", "CurrencyCode": "USD", "ProductCodes": null, "CultureCode": "es" }
Response
This response contains all the available rates (by flat rates shipping campaign).
{ "destinationCountry": "FO", "status": "active", "shippingRates": [{ "shippingMethodLocalizedName": "Envío express", "shippingMethodName": "Express Courier (Air)", "rangeMinValue": 0.0000, "rangeMaxValue": 10000000000.0000, "shippingCost": 35.0000, "shippingCostCurrency": "USD", "estimatedDeliveryDays ": "3-10", "specialOfferExpiryDate ": null } ] }, { "destinationCountry": "FR", "status": "active", "shippingRates": [{ "shippingMethodLocalizedName": "Envío estándar", "shippingMethodName": "Standard Courier", "rangeMinValue": 40.0000, "rangeMaxValue": 440.0000, "shippingCost": 0.0000, "shippingCostCurrency": "EUR", "estimatedDeliveryDays ": "2-10", "specialOfferExpiryDate ": null }, { "shippingMethodLocalizedName": "Envío express", "shippingMethodName": "Express Courier (Air)", "rangeMinValue": 40.0000, "rangeMaxValue": 440.0000, "shippingCost": 15.0000, "shippingCostCurrency": "EUR", "estimatedDeliveryDays ": "1-2", "specialOfferExpiryDate ": null }, { "shippingMethodLocalizedName": "Envío express", "shippingMethodName": "Express Courier (Air)", "rangeMinValue": 440.0000, "rangeMaxValue": 999999999.0000, "shippingCost": 0.0000, "shippingCostCurrency": "EUR", "estimatedDeliveryDays ": "1-2", "specialOfferExpiryDate ": null }, { "shippingMethodLocalizedName": "Envío estándar", "shippingMethodName": "Standard Courier", "rangeMinValue": 440.0000, "rangeMaxValue": 999999999.0000, "shippingCost": 0.0000, "shippingCostCurrency": "EUR", "estimatedDeliveryDays ": "2-10", "specialOfferExpiryDate ": null } ] }, { "destinationCountry": "GB", "status": "active", "shippingRates": [{ "shippingMethodLocalizedName": "Envío express", "shippingMethodName": "Express Courier (Air)", "rangeMinValue": 0.0000, "rangeMaxValue": 10000000000.0000, "shippingCost": 10.0000, "shippingCostCurrency": "USD", "estimatedDeliveryDays ": "1-1", "specialOfferExpiryDate ": null }, { "shippingMethodLocalizedName": "Envío estándar", "shippingMethodName": "Standard Courier", "rangeMinValue": 0.0000, "rangeMaxValue": 10000000000.0000, "shippingCost": 10.0000, "shippingCostCurrency": "USD", "estimatedDeliveryDays ": "2-2", "specialOfferExpiryDate ": null } ] },
Tracking Events API
Prerequisites
The request can include a list of global-e order IDs, a list of tracking events, or both, but all the same type: Inbound or Outbound. Each request can report on either inbound orders or outbound, but not both. For requesting inbound and outbound tracking events, two different requests should be issued.
GetTrackingEvents (Merchant to Global-e)
The Get Tracking Events API lets you receive status events on the delivery status of an order. Reporting of tracking events allows both our customers and 3rd parties to stay informed about the exact location and status of returned items throughout the entire external return journey.
With that, having tracking events for return shipments allows to trigger refunds automatically upon confirmation of returned item receipt (or any other tracking event).
The API accepts one or more order ID numbers, up to 100, on a single call, a list of either orders moved to forward shipments, after checkout completion (outbound), or returns (inbound) and returns their status.
Method/URL:
POST https://{globale_api_domain}/Shipment/GetTrackingEvents
Parameters
Request
Parameter Name | Type | Description | Mandatory |
---|---|---|---|
| DateTime | Date and time for the earliest time of the order shipment status, UTC, in RFC 2822 format (for example, Fri, 8 Aug 2014 17:13:07 +0000). | No |
| List of Strings | List of Global‑e Order IDs. Up to 100 in each request. Note: each Max length:100 chars. | One of either |
| List of Strings | List of Global‑e tracking numbers. Up to 100 in each request, with prefix | Conditional |
| String | The shipment direction. One of the following:
| Yes |
Response
Parameter Name | Type | Description | Mandatory |
---|---|---|---|
| List of | List of objects containing detailed error information. The object includes:
| |
| Object | The events for each
|
Global-e Tracking Events
The following table lists all the tracking events reported by Global-e:
GlobaleEventCode | GlobaleEventDescription |
---|---|
1 | The parcel has been created but is waiting to be manifested (i.e. despatched) |
2 | The parcel has been manifested (i.e.. despatched) |
3 | The carrier has yet to receive the parcel into their network |
4 | The carrier has acknowledged receipt of the parcel into their network |
5 | The carrier has acknowledged receipt of the parcel into their network but did not receive the required electronic manifest (pre advice file) |
6 | A collection request has been acknowledged by the carrier |
7 | The carrier has successfully collected a parcel from a customer |
8 | The carrier has failed to collect a parcel from a customer |
9 | The parcel has been misrouted by the carrier due to incorrect routing on the label |
10 | The parcel has been misrouted by the carrier due to incorrect routing on the label |
11 | The parcel has been advised as lost within the carriers network |
12 | The parcel has been delayed due to factors beyond the carriers control (i.e. inclement weather) |
13 | The parcel is with Customs (NR: This does not necessarily mean that the parcel has been refused entry into the destination country) |
14 | The parcel has been damaged |
15 | The parcel is in transit (NB: This could either be en route to a country hubs delivery depot) |
16 | The parcel has been Left at the local post office for collection |
17 | The parcel is with a 3rd party sub-contractor and a tracking event has occurred (refer to "Confirmation' field for further information if provided |
18 | The parcel has left the delivery depot for the recipients address |
19 | The parcel has been received by a sub-contractor 3rd party |
20 | The carrier has a query concerning the recipients address (i.e. Unable to locate,. incorrect post code etc.) |
21 | The carrier has left a calling card for the customer as they were unable to deliver the parcel |
22 | The carrier has delivered part of the consignment advised (e.g. Parcel 1 parcel of a 2 parcel consignment has been delivered) |
23 | The parcel is available to collect from the carriers premises |
24 | The parcel is being held at the delivery depot |
25 | The recipient no longer resides at the delivery address |
26 | The recipient refused to take delivery of the parcel |
27 | The parcel is to be returned to the sender |
28 | The carrier was unable to deliver the parcel (No reason specified) |
29 | The parcel has been successfully delivered |
30 | The carrier has provided some information concerning the parcel |
31 | An event has occurred after the parcel has been delivered / lost or RTS (i.e._ acknowledgement of a claim) |
32 | Special delivery instructions to app.? |
33 | The delivery / collection has requested to be cancelled |
34 | The carrier has received an electronic pre advice (manifest) for this parcel |
35 | The parcel has been at a bstatus that does not set an actual or default end date and as such has been 'closed" after a certain period of time dependent on the environment it belongs to |
36 | The parcel was miss sorted by the carrier and sent to the incorrect -deliver? dept. |
37 | The recipient has arranged a delivery with the carrier |
38 | The carrier attempted to deliver the parcel but was unable to access the recipients address to deliver or leave a inning card (i.e. Closed office building, gate-d development etc) |
39 | The payment for cash on delivery could not be collected |
40 | The recipient's identification failed |
41 | The payment could not be processed due to an invalid method of payment by recipient. |
42 | The payment for cash on delivery of parcel has been collected by the carrier |
43 | The parcel has been cleared for delivery |
44 | The parcel has been re boxed / re packed |
45 | The parcel has been requested to be disposed |
46 | The declared weight of the parcel does not match the actual weight of the parcel. |
47 | The parcel has been held by destination Customs |
48 | The parcel has been held by origin Customs |
49 | The parcel has been delivered to a neighbour's address |
50 | The parcel has been delivered to a safe place suggested by the recipient |
51 | The customer has collected the parcel from the store |
52 | The parcel is received at store and is ready for collection by recipient_ |
53 | The parcel is ready for collection at the store and it has not been collected after a period of time |
54 | The parcel has been delivered to a locker or collection point and is ready to be collected by the recipient. |
55 | The parcel has been delivered to the recipient's preferred point instead of collecting from depot or re-delivery or return |
56 | The package has been held by the carrier whilst collecting recipient details for clearance |
57 | The parcel has been re-labelled |
58 | The parcel attributes lie outside of service capability, i.e. weight/size/remote area issues |
59 | An SMS has been transmitted to the recipient to inform that the parcel is out for deliver). today |
60 | An email has been transmitted to the recipient to inform that the parcel is out for delivery today |
61 | The carrier attempted delivering the parcel but could not deliver |
62 | The package/s arrived to the destination country |
63 | A choice that the customer has made for delivery to a safe place (the delivery not happened yet) |
Error Codes
Code | Message |
---|---|
E01 | The shipment ({0}) is not trackable with this shipper |
E02 | The order ({0}) is not trackable with this shipper |
E03 | The provided tracking number ({0}) was not found |
E04 | The provided order ID ({0}) was not found |
E05 | The order ({0}) is not associated to the merchant |
E06 | The tracking number ({0}) is not associated to the merchant |
E07 | The order ({0}) doesn't have a tracking number |
E08 | The tracking event type parameter is invalid |
E10 | The number of input values (Tracking Number and Order IDs) exceeded the ({0}) limit |
E11 | At least one Order ID or Tracking Number should be specified |
Examples
Request
Request for only Global-e orders:
curl --location 'https://[globale domain]/Shipment/GetTrackingEvents' \ --header 'MerchantGUID: D2ED2A7F-F6ED-4CCB-B611-B44AC8D02250' \ { "EventSinceInUTC": "2025-04-01T20:08:05Z", "Type": "outbound", "OrderIds": [ "GE381652418TS" ], "TrackingNumbers":[ ]}
Response
{ "Data": { "SuccessfulTrackingNumbers": [ { "GlobaleOrderID": "GE381652418US", "MerchantOrderID": "#22165241", "GlobaleParcelCode": "null", "GlobaleRMANumber": "2832849023948", "MerchantRMANumber": "832849932893", "IsTrackingNumberActive": true, "TrackingNumber": "GE381652418TS2864637A0", "Type": "outbound", "TrackingUrl": "https://mailingtechnology.com/tracking/?tn=GE381652418TS2864637A0", "ShipperName": "Spring XBS Packet Registered-GlobalE", "TrackingEvents": [ { "ShipperEventDescription": "The parcel has been created but is waiting to be manifested (i.e. despatched)", "TrackingEventDateTimeInUTC": "2024-03-24T09:19:08", "GlobaleEventCode": "1", "GlobaleEventDescription": "The parcel has been created but is waiting to be manifested (i.e. despatched)", "ShipperEventCode": "0", "TrackingEventStatus": [], "Location": { "FullAddress": "BALTIMORE AIRPORT,MD-USA" } } ] }, { "GlobaleOrderID": "GE8770052418US", "MerchantOrderID": "#23816524", "GlobaleParcelCode": "null", "GlobaleRMANumber": "0239283284948", "MerchantRMANumber": "8884994993293", "IsTrackingNumberActive": true, "TrackingNumber": "GE381652418TS2864637A0", "Type": "outbound", "TrackingUrl": "https://mailingtechnology.com/tracking/?tn=GE381652418TS2864637A0", "ShipperName": "Spring XBS Packet Registered-GlobalE", "TrackingEvents": [ { "ShipperEventDescription": "The parcel has been created but is waiting to be manifested (i.e. despatched)", "TrackingEventDateTimeInUTC": "2024-03-24T09:19:16", "GlobaleEventCode": "1", "GlobaleEventDescription": "The parcel has been created but is waiting to be manifested (i.e. despatched)", "ShipperEventCode": "0", "TrackingEventStatus": [], "Location": { "FullAddress": "BALTIMORE AIRPORT,MD-USA" } } ] } ], "FailedTrackingNumbers": [ { "OrderId": "ABC123", "TrackingNumber": "123", "ErrorInfo": { "Code": "E06", "Error": "The tracking number (123) is not associated with the merchant", "Description": null }, "Success": false } ] }, "Errors": null }
Void Parcel
Introduction
The Void Parcel API lets you take out a declared parcel if you do not intend to send it or if it needs to be updated due to changed shipment requirements.
Note: At least one order ID should be provided in the request, Global-e OrderId
or the merchant's MerchantOrderId
.
Integration Overview
Method/URL
POST https://{globale_api_domain}/Parcel/VoidParcel
PARAMETERS:
string
OrderId
(mandatory) - Order unique identifierstring
ParcelCode
(mandatory) - Code used to identify theParcelCode
to void.string
MerchantOrderId
- The merchant's order unique identifier.
Example
Request:
{ "OrderId": "#12354", "ParcelCode": "454234", "MerchantOrderId": "#1138" }
Response:
{ "IsSuccess":true, "Errors":[] }
Error Handling
Error Code | Error Text | Additional Information |
---|---|---|
C100 | The parcel cannot be voided due to the status of the parcel. For a Global‑e operated hub, only the following statuses can be voided: Failed Transfer To Shipping Shipped By Merchant | This is the error in case the hub is operated by Global-e and the parcel has the wrong status. |
C101 | The parcel cannot be voided due to the status of the parcel. For merchant-operated hubs, only the following statuses can be voided: Failed Transfer To Shipping Shipped By Merchant Received In Hub | This is the error in case the hub is operated by the Merchant and the parcel has the wrong status. |
C102 (Log) | The parcel was voided, but the shipper's API to cancel the shipment failed. The following information is available from the shipper. Error code: Error text: | The API success ( Add it to the log and to the relevant field in the response |
C103 | Internal unknown failure | - |
C104 | The parcel code was not found, or the parcel was already voided | - |