Order Update API
Change Log
- August 2026: Added the
searchOrdersaction to search purchase orders. Added shipping speed and last status update date fields to the order response (version 1.3) - November 2024: Added returnless refund rule ID tag to return response and item weight unit/value tags (version 1.2)
- June 2024: New endpoints added to manage returns (get, search, initiate, update)
- October 2023: The API response for
<extraItemShippingCost>and<firstItemShippingCost>fields will return 0.0 if users change rate types or use multiple templates - April 2021: Version 1.1 released adding support for tax information, seller direct purchase methods, and increased tracking character limit
Introduction
The Order Update API lets you retrieve and update orders. It uses industry standards including XML and HTTPS.
There is no software to install. Use this specification to build an integration with the Order Update API using any programming language that supports TLS 1.2 and XML 1.0.
Minimum Requirements
- An AbeBooks bookseller account with a valid username and API key.
- Working knowledge of XML. For more information, see https://www.w3.org/XML/.
- System access to open port 443 for bidirectional TLS traffic.
- A programming language that supports TLS and XML.
- Because each XML request contains your username and API key, you must use a TLS-certified secure client.
- Operation through a proxy server is not supported.
Service Address
Server: https://orderupdate.abebooks.com
Port: 10003
Security
Security is based on TLS 1.2 and API key authentication. Generate an API key to get started.
Testing
AbeBooks does not currently have a test environment for the Order Update API.
You are responsible for verifying that your client software works as expected. We suggest creating one or more test orders (as a buyer) against dummy books in your AbeBooks inventory. (If you don't have dummy books in your inventory, upload a few – no more than 5 – using your usual inventory upload process.) You can then test against these orders without affecting real buyers.
Important Notes
When you submit an order as "Shipped", the buyer's card is charged immediately and the API responds with the updated status of each item. Check the status tag for each item in the response – it indicates whether the item should be shipped. Orders can be partially cancelled by the buyer, meaning only some items should be shipped.
Extra charge requests cannot be made through the Order Update API. To request extra charges for an order, go to your AbeBooks account to submit the request. You'll receive an email once the buyer accepts or rejects the charges. You can then process the order normally through the Order Update API.
AbeBooks provides fraud protection only for credit card orders. If a buyer contacts you with changes to their payment or shipping information after an order is placed, review this information carefully.
AbeBooks.com Purchase Orders
The core of the Order Update API is the AbeBooks.com Purchase Order (ABEPO). All successful requests return a single ABEPO or a list of ABEPOs, depending on the request. ABEPOs include the buyer's name and address, shipping information, order currency, and total value. Each ABEPO has a unique number (the "ABEPOID").
Each ABEPO includes one or more Purchase Order Items (ABEPOITEMs). Each ABEPOITEM references exactly one book sold. Typical ABEPOITEM fields include book title, seller's book ID, description, author, and item price. All items in an order are from the same seller to the same buyer. Each ABEPOITEM has a unique number (the "ABEPOITEMID"), as well as a reference to the parent ABEPO (ABEPOID).
The API is flexible – you don't always need to refer to individual ABEPOITEMs. Some requests let you access the order without referencing individual items. For example, a single request can set the status of the entire ABEPO and all its items.
ABEPOs and ABEPOITEMs pass through standard order statuses during processing. These statuses and settable values are defined below.
API Versions
| Version | Features |
|---|---|
| 1.0 | Initial release |
| 1.1 | Includes tax information for applicable orders. Includes Seller Direct method. Increase of the number of characters when updating tracking information. Support for return requests. |
| 1.2 | Adds item weight and item weight type. Adds the returnless refund rulesId to the return object field if it exists. |
| 1.3 | Adds shipping speed and last status update date to order responses. |