A unique identifier for an eBay order. An OrderID value should only be used in a CompleteSale call for a single line item order. For a multiple line item order, the OrderLineItemID or ItemID/TransactionID pair must be used to identify an order line item within the order.
OrderID overrides an OrderLineItemID or ItemID/TransactionID pair if these fields are also specified in the same request.
Note: As of June 2019, eBay has changed the format of order identifier values. The new format is a non-parsable string, globally unique across all eBay marketplaces, and consistent for both single line item and multiple line item orders. Unlike in the past, instead of just being known and exposed to the seller, these unique order identifiers will also be known and used/referenced by the buyer and eBay customer support.
For developers and sellers who are already integrated with the Trading API's order management calls, this change shouldn't impact your integration unless you parse the existing order identifiers (e.g., OrderID or OrderLineItemID), or otherwise infer meaning from the format (e.g., differentiating between a single line item order versus a multiple line item order). Because we realize that some integrations may have logic that is dependent upon the old identifier format, eBay is rolling out this Trading API change with version control to support a transition period of approximately 9 months before applications must switch to the new format completely.
During the transition period, for developers/sellers using a Trading WSDL older than Version 1113, they can use the X-EBAY-API-COMPATIBILITY-LEVEL HTTP header in API calls to control whether the new or old OrderID format is returned in call response payloads. To get the new OrderID format, the value of the X-EBAY-API-COMPATIBILITY-LEVEL HTTP header must be set to
1113. During the transition period and even after, the new and old OrderID formats will still be supported/accepted in all Trading API call request payloads. After the transition period (which will be announced), only the new OrderID format will be returned in all Trading API call response payloads, regardless of the Trading WSDL version used or specified compatibility level.
Note: For sellers integrated with the new order ID format, please note that the identifier for an order will change as it goes from unpaid to paid status. Sellers can check to see if an order has been paid by looking for a value of 'Complete' in the CheckoutStatus.Status field in the response of GetOrders or GetOrderTransactions call, or in the Status.CompleteStatus field in the response of GetItemTransactions or GetSellerTransactions call. Sellers should not fulfill orders until buyer has made payment. When using a CompleteSale call, either of these order IDs (paid or unpaid status) can be used to update an order. Similarly, either of these order IDs (paid or unpaid status) can be used in GetOrders or GetOrderTransactions call to retrieve specific order(s).