App Cycle
Note
Order Fulfilment
Order Placement
order.created
, will be triggered and sent over to the Order Fulfilment App, with shipment status being pending
. That sent data can then be processed to assign the orders to multi-shipping Apps.Webhook Payload order.created
List Shipping Apps Endpoint
Assign Shipments Body Request
Assign Shipments Response
At this step, the Order Fulfilment App has all the required information received from the Event Name Merchant ID who installed the application on their store. Get details on the Merchant via the ID using the endpoint here Timestamp of webhook creation A unique alphanumeric code or identifier assigned to a specific order. List of orders can be found here A unique alphanumeric code or identifier assigned to a specific order cart. A specific alphanumeric identifier associated with an order. Date and Time of the order. The source of the order. Whether or not the order 's status is set to Whether or not the Merchant has read the order The machine or device used when the customer placed the order. Order source details. Order status. The option to quote order price. The specific payment option or financial mechanism chosen and used by a customer to pay for a product or service as part of an order, encompassing various methods. Order's image receipt The currency in which order costs and prices are expressed and processed, based on the customer's preferences or the business's operational currency. Order amounts. The order exchange rate. The option to enable order cancellation by the store customer.
Whether or not to show the weight value. Whether or not to enable reorder . The option of displaying order is pending payment to the customer when the order status is Last date allowed to customer to pay the order. Total weight value Order Shipping details. Order shipment details. Order pickup branch details. Order shipment branch details. Customer details. Order Tag details. Order store details.
order.created
webhook event and is now able to process the splitting of orders to the shipping Apps. The following payload is correspondent to when the order.created
event is fired.Payload
Response
Orders Webhook Events Model
event
enum<string>
optional
Allowed values:
order.createdorder.updatedorder.refundedorder.deletedorder.products.updatedorder.payment.updatedorder.coupon.updatedorder.total.price.updatedorder.shipping.address.updatedorder.cancelledorder.customer.updated
merchant
number
optional
created_at
string
optional
data
object
optional
id
number
required
cart_reference_id
number
required
reference_id
number
required
urls
object
required
date
object (Date)
required
updated_at
object (Date)
required
source
enum<string>
required
Allowed values:
storelandingforgotten_basketabandoned-cartcampaigndashboardbuy_as_giftmahly-appbuy_nowone-clickcomplete_order
draft
boolean
required
draft
read
boolean
required
source_device
string
required
source_details
object
required
status
object (NewOrderStatus)
required
is_price_quote
boolean
required
payment_method
string
required
receipt_image
string
required
currency
string
required
amounts
object
required
exchange_rate
object
required
can_cancel
boolean
required
True
value should be set if the order status is in under review and in progress, as according to the store settings.show_weight
boolean
required
can_reorder
boolean
required
is_pending_payment
boolean
required
payment_pending
.pending_payment_ends_at
integer
required
total_weight
string
required
shipping
object
required
shipments
array [object {22}]
required
pickup_branch
object (Branch)
required
shipment_branch
object (ShipmentBranch)
required
customer
object (Customer)
required
items
array [object {16}]
required
bank
object
required
tags
object (OrderTag)
required
store
object
required
Update Shipment Details
Information
shipment.creating
, will be triggered and sent to the Shipping App. The Shipping App will use the shipment information, such as the recipient's address and the items being shipped, to create the shipment and set up the delivery process, so the Merchant will be able to download the shipment policy.shipment.created
will be triggered at that moment to update the shipment status for the Order Fulfillment App.Update Shipment Request Body
Update Shipment Response Body
The following enlists the values that can be sent to the endpoint to update the details of the shipmentA URL that provides a link to the tracking information for the shipment. A unique identifier for the shipment that distinguishes it from other shipments. A unique identifier for the tracking information associated with the shipment. The current status of the shipment. Effective January 20th, 2025, the status variable will be a required field in the request payload. The note field provides additional shipment information relevant factors, as it is used to clarify the shipment status and provide context. A PDF label that contains information about the shipment, such as the sender's and recipient's address, tracking number, and other relevant details. The actual cost of the shipment that the Merchant will be charged for, which is calculated per the shipping company's actual costs. Ensure to include VAT in the cost. The name of the shipping company for shipments created via the API
put_shipmentDetails_request_body
tracking_link
string
optional
Example:
https://xyz-shipping.com/v1/labels/498498496/track
shipment_number
string
required
Example:
846984645
tracking_number
string
optional
Example:
54563653
status
enum<string>
required
Allowed values:
createdin_progressdeliveringdeliveredshippedcancelled
Example:
delivered
status_note
string
optional
Example:
Parcel has been picked up by our logistics partner
pdf_label
string
optional
Example:
https://xyz-shipping/v1/downloads/10/F91fByOB-0aJJadf7JLeww/label-63563751.pdf
cost
integer
optional
Example:
40
external_company_name
string
optional
Shipments Return and Cancellation
Return Shipments
Return Shipments Request
Return Shipments Response
The Order Fulfilment can initiate a return on delivered shipment by consuming the Return Shipments API Endpoint by sending the
shipment_id
as a path parameter in this manner https://api.salla.dev/admin/v2/shipments/{shipment_id}/return
, which such request will then be sent to the Shipping Apps for them to handle the returning process.Cancel Shipments
Cancel Shipments Request
Cancel Shipments Response
The Order Fulfilment App is able to cancel any shipment by consuming the Cancel Shipments API Endpoint by sending the
shipment_id
as a path parameter in this manner https://api.salla.dev/admin/v2/shipments/{shipment_id}/cancel
, which the Shipping App will receive to handle the proper action for that.🎉
Modified at 2025-01-05 10:22:13