Checkout Coupons
Add Coupon to Checkout
POST https://yourstore.example.com/api/storefront/checkouts/{checkoutId}/couponsRequest
Parameters
- store_domain in path - string
- checkoutId in path - stringrequiredThe ID of the subject checkout. Identical to the cart ID.
- Accept in header with default of application/json - stringrequiredThe MIME type of the response body.
- Content-Type in header with default of application/json - stringrequiredThe MIME type of the request body.
Body
object | application/json
couponCodestring
versioninteger
The cart version that you expect to apply the updates. If the provided version doesn't match the current cart version, you will receive a conflict error. This field is optional; if not provided, optimistic concurrency control will not apply.Example: 1
example
{
"couponCode": "string",
"version": 1
}
Response
Body
object | application/json
billingAddressobject
cartobject
A cart contains a collection of items, prices, discounts, etc. It does not contain customer-related data.channelIdinteger
Channel ID.consignmentsarray[object]
couponsarray[object]
Coupons applied at the checkout level.feesarray[object]
Fees applied at the checkout level.createdTimestring
Time when the cart was created.customerobject
Customer details.customerMessagestring
Shopperʼs message provided as details for the order to be created from this cartgiftCertificatesarray[object]
Applied gift certificate (as a payment method).giftWrappingCostTotalnumber
Gift wrapping cost for all items, including or excluding tax.grandTotalnumber
The total payable amount, before applying any store credit or gift certificate.handlingCostTotalnumber
Handling cost for all consignments including or excluding tax.idstring
isStoreCreditAppliedboolean
true
value indicates StoreCredit has been applied.orderIdstring or null
outstandingBalancenumber
grandTotal
subtract the store-credit amountpaymentsarray[object]
promotionsarray[object]
shippingCostBeforeDiscountnumber
The shipping cost before discounts are applied.shippingCostTotalnumber
Shipping cost before any discounts are applied.shouldExecuteSpamCheckboolean
subtotalnumber
Subtotal of the checkout before applying item-level discounts. Tax inclusive based on the store settings.taxesarray[object]
taxTotalnumber
updatedTimestring
Time when the cart was last updated.versioninteger
The current version of the checkout increments with each successful update. You can use it to enable optimistic concurrency control for subsequent updates.Example: 1
example
{
"value": {
"billingAddress": {
"address1": "123 Main Street",
"address2": "",
"city": "Austin",
"company": "",
"country": "United States",
"countryCode": "US",
"customFields": [
{
"fieldId": "field_25",
"fieldValue": "Leave in backyard"
}
],
"email": "janedoe@example.com",
"firstName": "Jane",
"id": "5ba11e4a10fb5",
"lastName": "Doe",
"phone": "1234567890",
"postalCode": "78751",
"stateOrProvince": "Texas",
"stateOrProvinceCode": "TX"
},
"cart": {
"baseAmount": 119.93,
"cartAmount": 112.93,
"createdTime": "2018-09-18T15:48:26+00:00",
Delete Checkout Coupon
DELETE https://yourstore.example.com/api/storefront/checkouts/{checkoutId}/coupons/{couponCode}Request
Parameters
- store_domain in path - string
- checkoutId in path - stringrequiredThe ID of the subject checkout. Identical to the cart ID.
- couponCode in path - stringrequiredThe code of the subject coupon.
- Accept in header with default of application/json - stringrequiredThe MIME type of the response body.
Body
object | application/json
versioninteger
The cart version that you expect to apply the updates. If the provided version doesn't match the current cart version, you will receive a conflict error. This field is optional; if not provided, optimistic concurrency control will not apply.Example: 1
example
const options = {
method: 'DELETE',
headers: {Accept: 'application/json', 'Content-Type': 'application/json'}
};
fetch('https://yourstore.example.com/api/storefront/checkouts/[checkoutId]/coupons/[couponCode]', options)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
Response
Body
object | application/json
billingAddressobject
cartobject
A cart contains a collection of items, prices, discounts, etc. It does not contain customer-related data.channelIdinteger
Channel ID.consignmentsarray[object]
couponsarray[object]
Coupons applied at the checkout level.feesarray[object]
Fees applied at the checkout level.createdTimestring
Time when the cart was created.customerobject
Customer details.customerMessagestring
Shopperʼs message provided as details for the order to be created from this cartgiftCertificatesarray[object]
Applied gift certificate (as a payment method).giftWrappingCostTotalnumber
Gift wrapping cost for all items, including or excluding tax.grandTotalnumber
The total payable amount, before applying any store credit or gift certificate.handlingCostTotalnumber
Handling cost for all consignments including or excluding tax.idstring
isStoreCreditAppliedboolean
true
value indicates StoreCredit has been applied.orderIdstring or null
outstandingBalancenumber
grandTotal
subtract the store-credit amountpaymentsarray[object]
promotionsarray[object]
shippingCostBeforeDiscountnumber
The shipping cost before discounts are applied.shippingCostTotalnumber
Shipping cost before any discounts are applied.shouldExecuteSpamCheckboolean
subtotalnumber
Subtotal of the checkout before applying item-level discounts. Tax inclusive based on the store settings.taxesarray[object]
taxTotalnumber
updatedTimestring
Time when the cart was last updated.versioninteger
The current version of the checkout increments with each successful update. You can use it to enable optimistic concurrency control for subsequent updates.Example: 1
example
{
"value": {
"billingAddress": {
"address1": "123 Main Street",
"address2": "",
"city": "Austin",
"company": "",
"country": "United States",
"countryCode": "US",
"customFields": [
{
"fieldId": "field_25",
"fieldValue": "Leave in backyard"
}
],
"email": "janedoe@example.com",
"firstName": "Jane",
"id": "5ba11e4a10fb5",
"lastName": "Doe",
"phone": "1234567890",
"postalCode": "78751",
"stateOrProvince": "Texas",
"stateOrProvinceCode": "TX"
},
"cart": {
"baseAmount": 119.93,
"cartAmount": 112.93,
"createdTime": "2018-09-18T15:48:26+00:00",
Did you find what you were looking for?