Overview
After an order is created in OpenBorder, updates are expected as it progresses through fulfillment.
These updates, such as shipment events, customer detail corrections, or cancellations, keep OpenBorder’s Order Management System (OMS) aligned with your commerce platform and ensure accurate order, shipment, and product-level data throughout the fulfillment lifecycle.
All order updates are made by calling the Update an order endpoint.
Update Examples
The examples below outline the most common supported use cases.
1. Fulfillment Updates
Order Fulfilled
Once an order has been packed, labeled, and handed off to the carrier, your system should notify OpenBorder that the order (or a specific shipment within it) has been fulfilled and is now in transit.
Each fulfillment update should include:
- The identifiers for the order (
source_reference) and shipment (shipment_id) being fulfilled. - The shipment’s status set to
fulfilled. - A
fulfillmentsarray containing tracking details, carrier information, timestamps, and item references. - The
shipping_rate_idandshipping_rateof the shipment being fulfilled.
Endpoint: PUT https://api.openborder.com/api/direct/v1/orders
{
"source_reference": 98765,
"source_updated_at": "2025-10-23T14:45:00Z",
"shipments": [
{
"shipment_id": "ship_1",
"status": "fulfilled",
"fulfillments": [
{
"tracking_number": "1Z12345E0205271688",
"location": "San Francisco, CA",
"carrier": "UPS",
"shipped_at": "2025-10-23T12:30:00Z",
"status": "in_transit",
"items": [
{
"source_product_id": 1001,
"source_variant_id": 2001,
"quantity": 1
}
]
}
],
"shipping_rate_id": "rate_ups_priority",
"shipping_rate": 25
}
]
}A successful response with a 204 - No Content status will indicate that the order update was successfully made in the OpenBorder system. No response body is returned.
2. Cancelled Orders
If an order is cancelled, send an update to OpenBorder to indicate the order will not proceed to fulfillment or shipment. A cancellation update should include:
- The identifiers for the order (
source_reference) and shipment (shipment_id) being fulfilled. - The shipment-level status set to
cancelled. - The
shipping_rate_idandshipping_rateof the shipment being cancelled
Endpoint: PUT https://api.openborder.com/api/direct/v1/orders
{
"source_reference": 202510234,
"source_updated_at": "2025-10-20T12:30:00Z",
"shipments": [
{
"shipment_id": "ship_1",
"status": "canceled",
"shipping_rate_id": "rate_usps_priority",
"shipping_rate": 25.0
}
]
}A successful response with a 204 - No Content status confirms the cancellation was processed and the order is now marked as cancelled in OpenBorder.
