Add a price adjustment to a basket.
Operation ID: addPriceAdjustmentToBasketAdds a custom manual price adjustment to the basket.
curl "https://{shortCode}.api.commercecloud.salesforce.com/checkout/shopper-baskets/v1/organizations/{organizationId}/baskets/{basketId}/price-adjustments?siteId=RefArch" \
-X POST \
-H "content-type: application/json" \
-d '{
"discount": {
"value": 5,
"type": "percentage"
},
"itemText": "MyOrderAdjustment",
"level": "order",
"promotionId": "manual adjustment"
}'
An identifier for the organization the request is being made by
f_ecom_zzxy_prd
The ID of the basket to be modified.
The identifier of the site that a request is being made in the context of. Attributes might have site specific values, and some objects may only be assigned to specific sites
RefArch
A descriptor for a geographical region by both a language and country code. By combining these two, regional differences in a language can be addressed, such as with the request header parameter Accept-Language
following RFC 2616 & RFC 1766. This can also just refer to a language code, also RFC 2616/1766 compliant, as a default if there is no specific match for a country. Finally, can also be used to define default behavior if there is no locale specified.
en-US
{
"discount": {
"value": 5,
"type": "percentage"
},
"itemText": "MyOrderAdjustment",
"level": "order",
"promotionId": "manual adjustment"
}
A discount that can be specified instead of a price.
The item to which the price adjustment should be added, depending on the specified level. If the level is ´order´, item id is not needed. If shipping
, specify the UUID of the shipping item. If product
, specify the UUID of the product item.
93196fae953cbedbe54d67e760
The text describing the item in more detail.
A discounted item
The level at which the adjustment is applied.
order
indicates that the price adjustment should be added directly to basket.product
indicates that the price adjustment should be added to the product item.shipping
indicates that the price adjustment is added to the shipping item.
- product
- shipping
- order
order
The ID of the related promotion. Custom price adjustments can be assigned any promotion ID as long as it's not used by a price adjustment belonging to the same item and isn't used by a promotion defined in the promotion engine. If not specified, a promotion ID is generated.
Shipping100
The reason for the price adjustment.
Shipping promotion on order above $1,000 USD
This type supports additional properties passed along with the defined properties of this API.
To indicate that the properties were defined and expected to be handled as additional properties, they are expected to be prefixed with a c_
.
The type will reject any property that does not fit this pattern, only allowing additional properties beginning with the known prefix.
Success, the response body contains the basket with added price adjustment.
{
"adjustedMerchandizeTotalTax": 28.45,
"adjustedShippingTotalTax": 0.8,
"agentBasket": false,
"basketId": "a10ff320829cb0eef93ca5310a",
"billingAddress": {
"address1": "104 Presidential Way",
"city": "Woburn",
"countryCode": "US",
"firstName": "Stephanie",
"fullName": "Stephanie Miller",
"id": "bfea663fd3de75d5be3ec02702",
"lastName": "Miller",
"postalCode": "01801",
"stateCode": "MA"
},
"channelType": "storefront",
"couponItems": [
{
"code": "5ties",
"couponItemId": "cc6ef43f207bf64099288aec36",
"statusCode": "no_applicable_promotion",
"valid": true
}
],
"creationDate": "2019-10-17T08:29:55.340Z",
"currency": "USD",
"customerInfo": {
"customerId": "beQeANXJNsd0xcINsB6cSrobQa",
"email": "shopper@salesforce-test.com"
},
"lastModified": "2019-10-17T08:29:55.698Z",
"merchandizeTotalTax": 30,
"orderPriceAdjustments": [
{
"appliedDiscount": {
"amount": 0.05,
"percentage": 5,
"type": "percentage"
},
"createdBy": "testAgent",
"creationDate": "2015-05-25T09:13:10.942Z",
"custom": true,
"itemText": "MyOrderAdjustment",
"manual": true,
"price": -30,
"promotionId": "manual adjustment",
"priceAdjustmentId": "cdzoAiWbOmbiUaaadlfSpMDgNw"
}
],
"orderTotal": 615.21,
"paymentInstruments": [
{
"amount": 0,
"paymentCard": {
"cardType": "Visa",
"creditCardExpired": false
},
"paymentInstrumentId": "b7679bea661819b2de78b9de7d",
"paymentMethodId": "CREDIT_CARD"
}
],
"productItems": [
{
"adjustedTax": 30,
"basePrice": 199.99,
"bonusProductLineItem": false,
"gift": false,
"itemId": "3d4e28425ce0b3a65b0ac4e163",
"itemText": "Green Umbrella - Sustained Edition",
"optionItems": [
{
"adjustedTax": 0,
"basePrice": 0,
"bonusProductLineItem": false,
"gift": false,
"itemId": "ff9452ed11fcf5c80f9143a8f1",
"itemText": "We will plant a tree for your order.",
"optionId": "plantATree",
"optionValueId": "000",
"price": 0,
"priceAfterItemDiscount": 0,
"priceAfterOrderDiscount": 0,
"productId": "000",
"productName": "Plant a tree.",
"quantity": 3,
"shipmentId": "me",
"tax": 0,
"taxBasis": 0,
"taxClassId": "standard",
"taxRate": 0.05
}
],
"price": 599.97,
"priceAfterItemDiscount": 599.97,
"priceAfterOrderDiscount": 569.97,
"productId": "green-umbrella",
"productName": "Green Umbrella - Sustained Edition",
"quantity": 3,
"shipmentId": "me",
"tax": 30,
"taxBasis": 599.97,
"taxClassId": "standard",
"taxRate": 0.05
}
],
"productSubTotal": 599.97,
"productTotal": 569.97,
"shipments": [
{
"adjustedMerchandizeTotalTax": 30,
"adjustedShippingTotalTax": 0.8,
"gift": false,
"merchandizeTotalTax": 30,
"productSubTotal": 599.97,
"productTotal": 569.97,
"shipmentId": "me",
"shipmentTotal": 646.76,
"shippingAddress": {
"address1": "4162 Turkey Pen Road",
"city": "New York",
"countryCode": "US",
"firstName": "Agustin",
"fullName": "Agustin Estes",
"id": "4432af77112f7c2433248a48e8",
"lastName": "Estes",
"postalCode": "10016",
"stateCode": "NY"
},
"shippingMethod": {
"description": "Order received within 7-10 business days",
"id": "001",
"name": "Ground",
"price": 15.99
},
"shippingStatus": "not_shipped",
"shippingTotal": 15.99,
"shippingTotalTax": 0.8,
"taxTotal": 30.8
}
],
"shippingItems": [
{
"adjustedTax": 0.8,
"basePrice": 15.99,
"itemId": "d5ed0e58b8f8b5efe8d617a630",
"itemText": "Shipping",
"price": 15.99,
"priceAfterItemDiscount": 15.99,
"shipmentId": "me",
"tax": 0.8,
"taxBasis": 15.99,
"taxClassId": "standard",
"taxRate": 0.05
}
],
"shippingTotal": 15.99,
"shippingTotalTax": 0.8,
"taxation": "net",
"taxTotal": 30.8
}
The total tax on products in the shipment, including item-level price adjustments but not including service charges such as shipping. If the Discount Taxation preference is set to Tax Products and Shipping Only Based on Adjusted Price, this amount also includes prorated order-level price adjustments. It is read only.
4.95
The total tax on shipping charges in the shipment, including shipping price adjustments. It is read only.
0.3
Is the basket created by an agent? It is read only.
true
The unique identifier for the basket. It is read only.
e78aa5646a8efebdd9cdd38be7
The billing address.
The bonus discount line items.
The sales channel. It is read only.
- storefront
- callcenter
- marketplace
- dss
- store
- facebookads
- subscriptions
- onlinereservation
- customerservicecenter
- instagramcommerce
- tiktok
- snapchat
- youtube
storefront
The coupon items.
[{
"code": "10_percent_off"
}]
The timestamp when the basket was created. It is read only.
2015-05-19T15:23:18.000Z
A three letter uppercase currency code conforming to the ISO 4217 standard, or the string N/A
indicating that a currency is not applicable.
USD
The customer information, if the customer is logged in.
The gift certificate line items.
[{
"amount": 1,
"recipientEmail": "miller@salesforce-test.com",
"shipmentId": "me"
}]
The expiration datetime of the inventory reservation. It is read only.
2015-05-19T15:30:18.000Z
The timestamp when the basket was last modified. It is read only.
2015-05-19T15:25:18.000Z
The total products tax in the purchase currency. Merchandise total price represents the sum of the product prices before services (such as shipping) or adjustments from promotions have been added. It is read only.
4.95
The order-level price adjustments.
[{
"appliedDiscount": {
"amount": 15,
"type": "amount"
},
"itemText": "AgentOrderAdjustment",
"reasonCode": "override manual promo"
}]
The total price, including products, shipping and tax. It is read only.
110.24
The payment instruments list.
[{
"amount": 0,
"paymentCard": {
"holder": "Miller",
"cardType": "Visa"
},
"paymentMethodId": "CREDIT_CARD"
}]
The product items.
[{
"quantity": 1
}]
The total price of all products including item-level adjustments, but not including order-level adjustments or shipping charges. If the taxation policy is net, it doesn't include tax. If the taxation policy is gross, it includes tax. It is read only.
99
The total price of all products including adjustments, but not including shipping charges. If the taxation policy is net, it doesn't include tax. If the taxation policy is gross, it includes tax. It is read only.
88
The shipments.
[{
"shipmentId": "me2",
"shippingMethod": {
"id": "001"
},
"shippingAddress": {
"firstName": "Stephanie",
"lastName": "Miller",
"address1": "385 Prospect Valley Road",
"city": "Woburn",
"postalCode": "01801",
"stateCode": "MA",
"countryCode": "US"
}
}]
The shipping items.
The total price of all shipping charges, including shipping adjustments. If the taxation policy is net, it doesn't include tax. If the taxation policy is gross, it includes tax. It is read only.
5.99
The total tax on all shipping charges, not including shipping adjustments. It is read only.
0.3
The source code assigned to the basket. It is read only.
OUTDOOR1
The total tax amount. It is read only.
5.25
The taxation policy (gross or net). It is read only.
- gross
- net
net
This type supports additional properties passed along with the defined properties of this API.
To indicate that the properties were defined and expected to be handled as additional properties, they are expected to be prefixed with a c_
.
The type will reject any property that does not fit this pattern, only allowing additional properties beginning with the known prefix.