Orders Core
Overview
The Orders Core API provides fundamental operations for managing orders in SellerCenter. Orders represent customer purchases and contain order items, customer information, shipping details, and payment information.
Core order operations include:
- Order listing: Retrieve collections of orders with extensive filtering options
- Order anonymization: Anonymize customer information in orders for GDPR/LGPD compliance
- Order retrieval: Get detailed information about specific orders
- Order search: Search orders and get autocomplete suggestions
- Order counters: Get approximate counts of orders by status
Important: Orders can be filtered by many criteria including status, dates, customer information, shipment details, and more. The counters endpoint provides eventually consistent data suitable for UI hints and dashboards.
Get List of Orders
GET /v2/orders
Summary: Get list of orders with filters
Description: Retrieve a paginated collection of orders with extensive filtering capabilities. This endpoint supports filtering by status, dates, order numbers, customers, shipment types, payment methods, and many other criteria.
Parameters:
X-Context(header, optional): Context header (adminorseller)limit(query, required): Maximum number of items to returnoffset(query, required): Number of items to skipsection(query, optional): Search section (e.g.,status_shipped,status_delivered,status_pending,group_economy, etc.)packed(query, optional): Search by packed status (fully_packed,partially_packed,not_packed)customers[](query, optional): Search by customer name (first name and last name)printedStatus(query, optional): Search by printed statustags[](query, optional): Search by tag's numeric idproductSku[](query, optional): Search by product skudelivery(query, optional): Search by delivery (shippedUnder24h,notShippedUnder24h,notShippedUnder24BusinessHours)shipmentType(query, optional, deprecated): Search by shipment type (warehouse,dropshipping,crossdocking). UseshipmentTypes[]instead.shipmentTypes[](query, optional): Search by shipment types (array;warehouse,dropshipping,crossdocking)shipmentProviders[](query, optional): Search by shipment provider idpaymentMethods[](query, optional): Search by payment methodsoutlet(query, optional): Search orders from outlet onlyinvoiceRequired(query, optional): If set to "1", only orders requiring invoice will be returnedcancelationReasons[](query, optional, deprecated): Search by cancelation reason idcancelationReasonIds[](query, optional): Search by cancelation reason idfulfilmentType[](query, optional): Search by fulfilment type (merchant,venture)orderSources[](query, optional): Search by order sourcessellerNames[](query, optional): Search by seller namessellerIds[](query, optional): Search by seller IDsupdateDateStart(query, optional): Filter orders updated after this dateupdateDateEnd(query, optional): Filter orders updated before this datewarehouses[](query, optional): Search by warehouse IDsincludeVoucherDetails(query, optional): Include voucher details in responseincludeProductSet(query, optional): Include product set informationdateStart(query, optional): Search by order creation date or date timedateEnd(query, optional): Search by order creation date or date timeorderNumbers[](query, optional): Filter by order numbers (array)orderIds[](query, optional): Search by order IDssort(query, optional): Sort field (createdAtorupdatedAt)sortDir(query, optional): Sort direction (ascordesc)
Note:
- Supports extensive filtering by status, dates, customers, shipment types, payment methods, and many other criteria
- Returns paginated results with
limit,offset,total, andhasNextfields - Use
X-Contextheader to specify admin or seller context - Multiple filters can be combined for precise order retrieval
Authorization
BearerAuth OAuth 2.0 Bearer token authentication
In: header
Query Parameters
The maximum number of items to return
The number of items to skip before starting to return results
Search by order creation or date time. Time information is optional. By default start time will be at 00:00:00.
Search by order creation date or date time. Time information is optional. By default end time will be at 23:59:59.
Filter by order numbers
Search by order IDs
Search section
- status_shipped - returns orders with order items status
shipped- status_delivered - returns orders with order items statusdelivered- status_failed - returns orders with order items statusfailed- status_canceled - returns orders with order items statuscanceled- status_pending_all - returns orders with order items statuspendingandshipment_information_pending- status_pending - returns orders with order items statuspending- status_ready_to_ship - returns orders with order items statusready_to_ship- status_payment_pending - returns orders with order items statuspayment_pending- status_shipment_information_pending - returns orders with order items statusshipment_information_pending- status_returned - returns orders with order items statusreturned- status_return_shipped_by_customer - returns orders with order items statusreturn_shipped_by_customer- status_return_rejected - returns orders with order items statusreturn_rejected- status_return_waiting_for_approval - returns orders with order items statusreturn_waiting_for_approval- status_return_delivered - returns orders with order items statusreturn_delivered- group_economy - returns orders withpendingstatus andeconomyshipment provider type - group_express - returns orders withpendingstatus andexpressshipment provider type - group_standard - returns orders withpendingstatus andstandardshipment provider type - group_digital - returns orders withpendingstatus anddigitalshipment provider type - group_sameday - returns orders withpendingstatus andsamedayshipment provider type - group_air - returns orders withpendingstatus andairshipment provider type - group_surface - returns orders withpendingstatus andsurfaceshipment provider type - group_missing_external_invoice_access_key - returns orders withpendingorcanceledstatus and invoice key isempty- group_ready_to_ship_manifested - returns orders withready to shipstatus and manifest isexists- group_ready_to_ship_nonmanifested - returns orders withready to shipstatus and manifest isnot exists
"status_shipped" | "status_delivered" | "status_failed" | "status_canceled" | "status_pending_all" | "status_pending" | "status_ready_to_ship" | "status_payment_pending" | "status_shipment_information_pending" | "status_returned" | "status_return_shipped_by_customer" | "status_return_rejected" | "status_return_waiting_for_approval" | "status_return_delivered" | "group_economy" | "group_express" | "group_standard" | "group_digital" | "group_sameday" | "group_air" | "group_surface" | "group_missing_external_invoice_access_key" | "group_kpi_rejection_rate" | "group_kpi_return_rate" | "group_ready_to_ship_manifested" | "group_ready_to_ship_nonmanifested"Search by packed status - fully_packed - all of order items packed - partially_packed - part of order items packed - not_packed - no order items packed
"fully_packed" | "partially_packed" | "not_packed"Search by customer name (first name and last name)
Search by printed status
Search by tag's numeric id
Search by product sku
Search by delivery: - shippedUnder24h - Orders with the status of the Order Item was set to shipped less or equal than 24 hours ago - notShippedUnder24h - Orders with the status of the Order Item was set to shipped more than 24 hours ago - notShippedUnder24BusinessHours - Orders with the status of the Order Item was set to shipped more than 24 business hours ago
"shippedUnder24h" | "notShippedUnder24h" | "notShippedUnder24BusinessHours"Search by shipment type (single value). Deprecated in favor of shipmentTypes[].
"warehouse" | "dropshipping" | "crossdocking"Search by shipment types (multiple values allowed)
Search by shipment provider id (or -1 for orders have no shipment provider)
Search by payment methods
Search orders from outlet only
If this field is set to "1" then only orders for which an invoice is required will be returned
Search by cancelation reason id (this field name is marked deprecated and will be replaced by cancelationReasonIds)
Search by cancelation reason id
Search by fulfilment type - merchant - means the type of shipment from the seller's warehouse - venture - means the type of shipment from the venture's warehouse
Search by order sources
Search by seller names
Search by seller IDs
Filter orders updated after this date
date-timeFilter orders updated before this date
date-timeSearch by warehouse IDs
Include voucher details in response
Include product set information
Sort field
"createdAt" | "updatedAt"Sort direction
"asc" | "desc"Header Parameters
Define if the request is done by an admin or by a seller
"admin" | "seller"Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://loading/v2/orders?limit=100&offset=0"{
"items": [
{
"id": 1111,
"number": "MY-111143",
"status": "pending"
}
],
"pagination": {
"limit": 20,
"offset": 0,
"hasNext": true
}
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials were not provided or are invalid"
}{
"title": "Access Denied",
"status": 403,
"detail": "You do not have permission to access this resource"
}{
"title": "Not Found",
"status": 404,
"detail": "The requested resource was not found"
}{
"title": "Service Unavailable",
"status": 500,
"detail": "The service is temporarily unavailable. Please try again later."
}{
"title": "Service Unavailable Due to Maintenance Mode",
"status": 503,
"detail": "The service is currently under maintenance. Please try again later."
}Anonymize Order Information
POST /v2/orders/anonymize
Summary: Anonymize order information
Description: Anonymize customer information in one or more orders for GDPR/LGPD compliance. This endpoint supports two modes:
- Default Mask Mode: When
default_maskis provided, all customer data fields (names, addresses, etc.) will be replaced with the mask value. - Selective Update Mode: When specific fields are provided without
default_mask, only those fields will be updated.
The operation processes orders in batch and returns detailed results for each order.
Request Body:
order_numbers(array, required): Array of order numbers to anonymize (minimum 1 item)default_mask(string, optional): Default mask to apply to all fields if providedaddress_billing(object, optional): Billing address fields to updatefirst_name,last_name: Customer names for billingphone,phone2: Primary and secondary phone numbersaddress1toaddress5: Address linescity,postcode,country: Location detailscustomer_email: Email address for billing
address_shipping(object, optional): Shipping address fields to update (same structure as billing)customer_first_name(string, optional): Customer's first namecustomer_last_name(string, optional): Customer's last namenational_registration_number(string, optional): National registration number
Examples:
- Default mask: Apply "LGPD-1212" to all customer data fields
- Selective update: Update only specific fields like customer names and billing address
- Batch processing: Process multiple orders in a single request
Response Codes:
- 200: All orders processed successfully
- 206: Partial success - some orders processed, others failed
- 400: Bad request - validation errors or all orders failed
Note:
- Supports batch processing of multiple orders
- Returns detailed success/failure information for each order
- Useful for GDPR/LGPD compliance requirements
- When using
default_mask, all customer fields are replaced with the mask value
Authorization
BearerAuth OAuth 2.0 Bearer token authentication
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://loading/v2/orders/anonymize" \ -H "Content-Type: application/json" \ -d '{ "order_numbers": [ "ORDER123456" ], "default_mask": "LGPD-1212" }'{
"message": "Order update completed",
"successful_updates": [
"ORDER123456",
"ORDER789012"
],
"failed_updates": [],
"total_processed": 2,
"successful_count": 2,
"failed_count": 0
}{
"message": "Order update completed",
"successful_updates": [
"ORDER123456"
],
"failed_updates": [
{
"order_number": "ORDER789012",
"error": "Order not found"
}
],
"total_processed": 2,
"successful_count": 1,
"failed_count": 1
}{
"error": "Invalid input data or validation errors"
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials were not provided or are invalid"
}{
"title": "Access Denied",
"status": 403,
"detail": "You do not have permission to access this resource"
}{
"error": "Internal server error"
}Get Order by ID
GET /v2/orders/{orderId}
Summary: Get a specific order by ID
Description: Retrieve detailed information about a specific order by its numeric ID. Returns complete order information including order items, customer details, shipping information, and payment details.
Parameters:
orderId(path, required): Numeric ID of the ordershipmentType(query, optional): Filter by shipment typeincludeProductSet(query, optional): Include product set information
Note:
- Returns complete order details including all order items
- Use
includeProductSetto get additional product set information - Order status and history information is included in the response
Authorization
BearerAuth OAuth 2.0 Bearer token authentication
In: header
Path Parameters
Numeric ID of the order
Query Parameters
Filter by shipment type
Include product set information
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://loading/v2/orders/0"{
"id": 1111,
"uuid": "9d6ca7ce-4b71-46bf-aa5e-a0727eca880z",
"number": "MY-111143",
"status": "pending",
"sellerId": 222
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials were not provided or are invalid"
}{
"title": "Access Denied",
"status": 403,
"detail": "You do not have permission to access this resource"
}{
"title": "Not Found",
"status": 404,
"detail": "The requested resource was not found"
}{
"title": "Service Unavailable",
"status": 500,
"detail": "The service is temporarily unavailable. Please try again later."
}{
"title": "Service Unavailable Due to Maintenance Mode",
"status": 503,
"detail": "The service is currently under maintenance. Please try again later."
}Search Orders
GET /v2/orders/search
Summary: Search orders for autocomplete suggestions
Description: Search orders and get autocomplete suggestions for order numbers, order sources, customers, and products. Useful for building search interfaces and autocomplete functionality.
Parameters:
key(query, required): Search key type (order_number,order_nr,order_source,customer,product,cancelation-reason)query(query, required): Search query stringfilteredStatus(query, optional): Filter by status (various status options available)
Note:
- Returns autocomplete suggestions based on the search key type
- Supports searching by order number, order source, customer, or product
- Useful for building search interfaces with autocomplete
Authorization
BearerAuth OAuth 2.0 Bearer token authentication
In: header
Query Parameters
Search key type
"order_number" | "order_nr" | "order_source" | "customer" | "product" | "cancelation-reason"Search query string
Filter by status
"status_shipped" | "status_delivered" | "status_failed" | "status_canceled" | "status_pending_all" | "status_pending" | "status_ready_to_ship" | "status_payment_pending" | "status_shipment_information_pending" | "status_returned" | "status_return_shipped_by_customer" | "status_return_rejected" | "status_return_waiting_for_approval" | "status_return_delivered" | "group_economy" | "group_express" | "group_standard" | "group_digital" | "group_sameday" | "group_air" | "group_surface" | "group_missing_external_invoice_access_key" | "group_kpi_rejection_rate" | "group_kpi_return_rate" | "group_ready_to_ship_manifested" | "group_ready_to_ship_nonmanifested"Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://loading/v2/orders/search?key=order_number&query=string"{
"results": [
{
"label": "Order #12345",
"value": "12345",
"sublabel": "Customer: John Doe | Status: Pending"
},
{
"label": "Order #12346",
"value": "12346",
"sublabel": "Customer: Jane Smith | Status: Shipped"
}
]
}{
"title": "Bad Request",
"status": 400,
"detail": "The request parameters are invalid"
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials were not provided or are invalid"
}{
"title": "Access Denied",
"status": 403,
"detail": "You do not have permission to access this resource"
}{
"title": "Service Unavailable",
"status": 500,
"detail": "The service is temporarily unavailable. Please try again later."
}{
"title": "Service Unavailable Due to Maintenance Mode",
"status": 503,
"detail": "The service is currently under maintenance. Please try again later."
}Get Order Counters
GET /v2/orders-counters
Summary: Get order counter values for each order state
Description: Get approximate counters for orders grouped by filters. This endpoint is suitable for getting quick information about count of orders, for example, when developing your own UI and want to display hints with count of pending orders. Data is eventually consistent, however there can be some delay in updating those counters.
Parameters:
includeOrderCounters(query, optional): When set to false, excludes order counters from response (default:true)includeReturnCounters(query, optional): When set to true, includes return counters (default:false)
Note:
- Returns counters for pending, ready_to_ship, shipped, delivered, cancelled orders
- Data is eventually consistent - may have slight delays
- Use
includeReturnCountersto get return-related counters - Suitable for dashboard displays and UI hints
Authorization
BearerAuth OAuth 2.0 Bearer token authentication
In: header
Query Parameters
When set to false, excludes order counters (pending, ready to ship, shipped, etc.) from the response to improve performance
When set to true, includes return counters in the response
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://loading/v2/orders-counters"{
"pending": {
"pending": 10,
"notPrintedPendingCount": 5,
"pendingExpressCount": 2,
"pendingEconomyCount": 3,
"pendingStandardCount": 4
},
"readyToShipCount": 15,
"paymentPendingCount": 2,
"notPrintedReadyToShipCount": 8,
"shippedCount": 25,
"return": {
"returnedCount": 5,
"returnShippedByCustomerCount": 2,
"returnDeliveredCount": 1,
"returnWaitingForApprovalCount": 3,
"returnRejectedCount": 1
}
}{
"title": "Unauthorized",
"status": 401,
"detail": "Authentication credentials were not provided or are invalid"
}{
"title": "Service Unavailable",
"status": 500,
"detail": "The service is temporarily unavailable. Please try again later."
}{
"title": "Service Unavailable Due to Maintenance Mode",
"status": 503,
"detail": "The service is currently under maintenance. Please try again later."
}