Bread Order Management
Once a customer checks out through Bread's modal an order is created within Bread's systems. This order is in a PENDING state and will need to be updated to properly go through the order process.
Overview: Bread Order States
PENDING
Bread orders fall into a PENDING state immediately after a checkout is complete. If no action is taken on a Bread order it will stay in a PENDING state until it expires.
AUTHORIZED
A Bread order should be authorized once it is signed off on by the merchant. Meaning if the order total in a merchant's Order Management System matches the order total of the Bread order the merchant should send an API request to Bread to move the order from a PENDING
to an AUTHORIZED
state.
SETTLED
When a merchant settles an order in their systems a request should be sent to Bread to move the order from an AUTHORIZED
to a SETTLED
state. Bread's standard practice is this request is sent at the time of shipment. When an order is moved to a SETTLED
state Bread will release the funds to the merchant.
Changing Order States
Changing Bread order states requires the order's TRANSACTION ID. This ID is provided to the merchant after a customer completes a checkout via the INSTALLMENTS:APPLICATION_CHECKOUT event callback function
API Requests and Responses
Access Tokens required
You will need to have the proper access tokens generated to access Bread's APIs. Access tokens can be generated using Basic Authentication by sending the client credentials (API and Secret Key) found in the Bread Merchant Portal. See the API Access Tokens page for more details
Consult the below links for information on sending requests and generating responses from Bread's Transaction API:
Bread Shipping API
The Bread Shipping API offers the ability to provide Bread an order's shipping information, such as the carrier or tracking number. Using the two endpoints below, orders shipping information can be captured or retrieved.
The Add Transaction Fulfillment Details endpoint provides the ability to add fulfillment details, including the carrier and the tracking number for a single transaction. If an order has multiple shipments, the endpoint can be hit as many times as needed or the data can be passed in an array, as shown below:
{
"items": [
{
"id": "74bfd3ab-f922-4a83-8568-cc2414b04fa5",
"transactionID": "f6411278-4760-47e1-bc9e-431d90d5f2d8",
"carrier": "FedEx",
"trackingNumber": "11111111111",
"createdAt": "2023-03-03T17:49:23.25482Z"
},
{
"id": "ca8c1b40-0f84-4bad-8d18-68c5031ac949",
"transactionID": "f6411278-4760-47e1-bc9e-431d90d5f2d8",
"carrier": "FedEx",
"trackingNumber": "22222222222",
"createdAt": "2023-03-03T17:58:16.31087Z"
}
]
}
The Get Transaction Fulfillment Details endpoint will return an unordered array of the fulfillment details, including the carrier and the tracking number for a single transaction:
{
"items": [
{
"id": "74bfd3ab-f922-4a83-8568-cc2414b04fa5",
"transactionID": "f6411278-4760-47e1-bc9e-431d90d5f2d8",
"carrier": "FedEx",
"trackingNumber": "234802384023948",
"createdAt": "2023-03-03T17:49:23.25482Z"
}
]
}
Updated 5 months ago