Skip to content

UpdateSalesOrder

Field Type Required Description
externalCode ExternalCode external order id
min length 1
notes Notes Customer notes where the shopper can provide special instructions. The notes are shown in the In-Store App & Admin.
max length 1000
lineItems array[UpdateSOLineItem]
specialInstructions SpecialInstructions Special instructions of the order. It can contain special shipping or fulfillment instructions
data `object null`
fulfillmentStatus string one of: open, inProgress, completed, actionRequired
addressSequences array[UpdateAddressSequence] If the array is set it will replace all addresses
paymentTransactions array[object]
primaryBillToAddressSequenceIndex number Position in the AddressSequences-Array, mandatory for all fulfillment methods that include billing like directShip and BOPIS
primaryShipToAddressSequenceIndex number Position in the AddressSequences-Array, mandatory for all fulfillment methods that include shipping like directShip
status SOStatus one of: new, open, rejected, canceled, ready, fulfilled, completed, inProgress
sourceIp SourceIP IP address from the client where the order was placed. It can be a IPv4 or IPv6 address
userAgent UserAgent The UserAgent string from headers of the incoming request.
domain Domain The domain from which order came.
pattern: ^(((?!-))(xn--|_{1,1})?[a-z0-9-]{0,61}[a-z0-9]{1,1}\.)*(xn--)?([a-z0-9][a-z0-9\-]{0,60}|[a-z0-9-]{1,30}\.[a-z]{2,})$
platform Platform The platform from which the order came.
one of: engage, desktop, mobile, checkoutPage, inStoreApp, other
os OS Operation system of the source device
one of: ios, android, other
subTotal number format: float
discountAmount OrderDiscountAmount Total amount of all applied promotions with coupons on order level. Without line item level promotions, since these are already included in the order subtotal.
format: float · default: 0
promoAmount OrderPromoAmount Total amount of all applied promotions on order level. Without line item level promotions, since these are already included in the order subtotal.
format: float · default: 0
shippingSubTotal number format: float
shippingDiscountAmount number format: float
shippingPromoAmount number format: float
shippingTotal number format: float
taxAmount TaxAmount Tax amount of the first tax group (e.g. for german taxes this is an absolut number based on either 7% or 19% of the order total; the order total is 10.00 EUR so the taxAmount is 10.00 EUR * 0.19 = 1.9 EUR)
format: float · default: 0
tax2Amount Tax2Amount Tax amount of the second tax group (can be used for additional taxes like for example US state taxes)
format: float · default: 0
taxSummary TaxSummary
total number format: float
customer object Updates the given attribute for the newly created anonymous customer
{
"externalCode": "000000274",
"notes": "Please wrap each item individually.",
"lineItems": [
{
"code": "386",
"parentLineItemCode": "286",
"quantity": 1,
"routedQuantity": 1,
"fulfillmentLocationCode": "DERetail001",
"shipToAddressSequenceIndex": 0,
"shippingAmount": 0
}
],
"specialInstructions": "House behind the dumpster",
"data": {
"collectedLoyaltyPoints": 10
},
"fulfillmentStatus": "open",
"addressSequences": [
{
"type": "pickup",
"firstName": "Max",
"middleName": null,
"lastName": "Muster",
"mobile": "+49 12345 6789 003",
"emailAddress": "max.muster@shopgate.com"
},
{
"type": "billing",
"customerContactId": "0b475af4-7ed9-4065-b4bb-7d76c537d820"
},
{
"type": "shipping",
"firstName": "Max",
"middleName": null,
"lastName": "Muster",
"company": "Awesome Company Inc",
"address1": "1234 Main Street",
"city": "Butzbach",
"region": "HE",
"postalCode": "35510",
"country": "DE",
"mobile": "+49 12345 6789 003",
"emailAddress": "max.muster@shopgate.com",
"orderSegment": {
"selectedShippingMethod": {
"code": "express",
"serviceLevel": {
"code": "express",
"carrier": {
"code": "DHL"
}
}
}
}
}
],
"paymentTransactions": [
{
"externalCode": "pi_GTS8a787uuRMaC86GBxpDABYn",
"paymentMethod": {
"code": "stripe"
},
"authorizedAmount": 0
}
],
"primaryBillToAddressSequenceIndex": 0,
"primaryShipToAddressSequenceIndex": 1,
"status": "new",
"sourceIp": "85.45.62.2"
}