openapi: 3.0.0 info: title: BigCommerce Abandoned Cart Emails Checkout Store Credit API version: 3.0.0 termsOfService: https://www.bigcommerce.com/terms description: Abandoned Cart Emails V3 API managing Handlebars-based emails. contact: name: BigCommerce url: https://www.bigcommerce.com email: support@bigcommerce.com servers: - url: https://api.bigcommerce.com/stores/{store_hash}/v3 variables: store_hash: default: store_hash description: Permanent ID of the BigCommerce store. description: BigCommerce API Gateway security: - X-Auth-Token: [] tags: - name: Checkout Store Credit paths: /checkouts/{checkoutId}/store-credit: post: tags: - Checkout Store Credit summary: BigCommerce Add Store Credit description: "Applies any available store credit to a checkout. As on the storefront, all available store credit will be used (up to the value of the order) and no amount need be specified.\n\n> #### Note\n> * Substitute your storefront domain for `yourstore.example.com`. \n> * The Send a Test Request feature is not currently supported for this endpoint." operationId: addCheckoutStoreCredit parameters: - name: checkoutId in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/checkouts_Resp' delete: tags: - Checkout Store Credit summary: BigCommerce Remove Store Credit description: "Removes store credit from a checkout.\n\n> #### Note\n> * Substitute your storefront domain for `yourstore.example.com`. \n> * The Send a Test Request feature is not currently supported for this endpoint. " operationId: removeCheckoutStoreCredit parameters: - name: checkoutId in: path required: true schema: type: string responses: '200': description: '' content: application/json: schema: type: object components: schemas: CheckoutCoupon: title: Checkout Coupon required: - code type: object properties: id: type: integer description: The coupon ID. code: type: string description: the coupon code displayName: type: string description: The coupon title based on different types provided in control panel section. couponType: type: integer description: '|Type `int`|Type Name| |-|-| |`0`|`per_item_discount`| |`1`|`percentage_discount`| |`2`|`per_total_discount`| |`3`|`shipping_discount`| |`4`|`free_shipping`| |`5`|`promotion`|' discountedAmount: type: number description: The discounted amount applied within a given context. format: double x-internal: false checkouts_Resp: title: checkouts_Resp type: object properties: data: title: Checkout type: object properties: id: type: string description: '' format: uuid cart: title: Cart type: object properties: id: type: string description: Cart ID, provided after creating a cart with a POST. format: uuid customer_id: type: integer description: ID of the customer to which the cart belongs. format: int32 email: type: string description: The cartʼs email. This is the same email that is used in the billing address currency: title: Currency type: object properties: name: type: string description: The currency name. code: type: string description: 'ISO-4217 currency code. (See: http://en.wikipedia.org/wiki/ISO_4217.)' symbol: type: string description: The currency symbol. decimalPlaces: type: number description: The number of decimal places for the currency. For example, the USD currency has two decimal places. format: double description: The currency in which prices are displayed (the store default currency). istaxIncluded: type: boolean description: Boolean representing whether tax information is included. baseAmount: type: number description: The cost of the cart’s contents, before applying discounts. format: double discountAmount: type: number description: Order-based discounted amount only - Excludes coupon discounts and product-based discounts. format: double cartAmount: type: number description: Sum of line-items amounts, minus cart-level discounts and coupons. This amount includes taxes, where applicable. format: double coupons: type: array description: '' items: title: Applied Coupon required: - code type: object properties: id: type: string description: The coupon ID. code: type: string description: the coupon code displayName: type: string description: The coupon title based on different types provided in control panel section. couponType: type: string description: Key name to identify the type of coupon. discountedAmount: type: number description: The discounted amount applied within a given context. format: double discounts: type: array description: '' items: title: Applied Discount type: object properties: name: type: string description: The name provided by the merchant. discountedAmount: type: number description: The discounted amount applied within a given context. format: double lineItems: type: object description: '' items: title: Line Item required: - digitalItems - physicalItems type: object properties: physicalItems: type: array description: '' items: title: Item Physical required: - quantity type: object properties: id: type: string description: The line-item ID. parentId: type: string description: The product is part of a bundle, such as a product pick list, then the parentId or the main product ID will populate. variantId: type: integer description: ID of the variant. productId: type: integer description: ID of the product. sku: type: string description: SKU of the variant. name: type: string description: The itemʼs product name. url: type: string description: The product URL. quantity: type: number description: Quantity of this item. format: double isTaxable: type: boolean description: Whether the item is taxable. imageUrl: type: string description: A publicly-accessible URL for an image of this item. discounts: type: array description: A list of discounts applied to this item, as an array of AppliedDiscount objects. items: title: Applied Discount type: object properties: name: type: string description: The name provided by the merchant. discountedAmount: type: number description: The discounted amount applied within a given context. format: double discountAmount: type: number description: The total value of all discounts applied to this item (excluding coupon). format: double brand: type: string description: The product's brand. couponAmount: type: number description: The total value of all coupons applied to this item. format: double originalPrice: type: number description: The item’s original price is the same as the product’s default price. listPrice: type: number description: The item’s list price, as quoted by the manufacturer or distributor. format: double salePrice: type: number description: The itemʼs price after all discounts are applied. (The final price before tax calculation.) format: double extendedListPrice: type: number description: The itemʼs list price multiplied by the quantity. format: double extendedSalePrice: type: number description: The itemʼs sale price multiplied by the quantity. format: double type: type: string description: the product type - physical or digital addedByPromotion: type: boolean description: If the item was added automatically by a promotion, such as a coupon or buy one, get one. isShippingRequired: type: boolean description: Whether this item requires shipping to a physical address. isMutable: type: boolean description: '' giftWrapping: title: Gift Wrapping type: object properties: name: type: string description: '' message: type: string description: '' amount: type: number description: '' format: double digitalItems: type: array description: '' items: title: Item Digital required: - quantity type: object properties: id: type: string description: The line-item ID. parentId: type: string description: Bundled items will have their parentʼs item ID. variantId: type: number description: ID of the variant. format: double productId: type: number description: ID of the product. format: double sku: type: string description: SKU of the variant. name: type: string description: The itemʼs product name. url: type: string description: The product URL. quantity: type: number description: Quantity of this item. format: double brand: type: string description: The itemʼs brand. isTaxable: type: boolean description: Whether the item is taxable. imageUrl: type: string description: A publicly-accessible URL for an image of this item. discounts: type: array description: List of discounts applied to this item, as an array of AppliedDiscount objects. items: title: Applied Discount type: object properties: name: type: string description: The name provided by the merchant. discountedAmount: type: number description: The discounted amount applied within a given context. format: double discountAmount: type: number description: The total value of all discounts applied to this item (excluding coupon). format: double couponAmount: type: number description: The total value of all coupons applied to this item. format: double originalPrice: type: number description: The item’s original price is the same as the product’s default price. listPrice: type: number description: The item’s list price, as quoted by the manufacturer or distributor. format: double salePrice: type: number description: The itemʼs price after all discounts are applied. (The final price before tax calculation.) format: double extendedListPrice: type: number description: The itemʼs list price multiplied by the quantity. format: double extendedSalePrice: type: number description: The itemʼs sale price multiplied by the quantity. format: double type: type: string description: the product type - physical or digital isMutable: type: boolean description: '' isShippingRequired: type: boolean description: Whether this item requires shipping to a physical address. downloadFileUrls: type: array description: URLs to download all product files. items: type: string downloadPageUrl: type: string description: The URL for the combined downloads page. downloadSize: type: string description: Specifies the combined download size in human-readable style; for example, `30MB`. giftCertificate: type: array description: '' items: title: Item Gift Certificate required: - amount - recipient - sender - theme type: object properties: id: type: string description: Gift certificate identifier name: type: string description: The name of the purchased gift certificate; for example, `$20 Gift Certificate`. theme: type: string description: Currently supports `Birthday`, `Boy`, `Celebration`, `Christmas`, `General`, and `Girl`. amount: type: number description: Value must be between $1.00 and $1,000.00. format: double taxable: type: boolean description: '' sender: title: Contact Entity type: object properties: name: type: string description: '' email: type: string description: '' recipient: title: Contact Entity type: object properties: name: type: string description: '' email: type: string description: '' message: type: string description: Limited to 200 characters. type: type: string description: Explicitly specifying the gift certificate type. customItems: type: array items: title: Item Custom type: object properties: id: type: string description: ID of the custom item sku: type: string description: Custom item SKU name: type: string description: Item name quantity: type: string listPrice: type: string description: Price of the item. With or without tax depending on your store setup. description: 'Add a custom item to the shoppers cart. * Custom items are not added to the catalog. * The price should be set to match the store settings for taxes.' createdTime: type: string description: Time when the cart was created. updatedTime: type: string description: Time when the cart was last updated. description: A cart contains a collection of items, prices, discounts, etc. It does not contain customer-related data. billingAddress: title: Address Response type: object allOf: - title: Address Properties required: - countryCode type: object properties: firstName: type: string description: '' lastName: type: string description: '' email: type: string description: '' company: type: string description: '' address1: type: string description: '' address2: type: string description: '' city: type: string description: '' stateOrProvince: type: string description: Represents state or province. stateOrProvinceCode: type: string description: '' countryCode: type: string description: 'ISO 3166-1 alpha-2 country code. (See: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)' postalCode: type: string description: '' phone: pattern: ^\+?[1-9]\d{1,14}(x\d{1-5})?$ type: string description: '' customFields: type: array description: '' items: title: CustomField type: object properties: fieldId: type: string description: '' fieldValue: type: string description: This can also be an array for fields that need to support list of values; for example, a set of checkboxes. - type: object properties: id: type: string description: '' consignments: type: array description: This allows you to have multiple shipping addresses per checkout. Where there is only one shipping address, this array will contain only one value, with all the items. items: title: Consignment type: object properties: id: type: string description: '' shippingAddress: type: object properties: {} x-deprecated: true address: title: Address Response type: object allOf: - title: Address Properties required: - countryCode type: object properties: firstName: type: string description: '' lastName: type: string description: '' email: type: string description: '' company: type: string description: '' address1: type: string description: '' address2: type: string description: '' city: type: string description: '' stateOrProvince: type: string description: Represents state or province. stateOrProvinceCode: type: string description: '' countryCode: type: string description: 'ISO 3166-1 alpha-2 country code. (See: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)' postalCode: type: string description: '' phone: pattern: ^\+?[1-9]\d{1,14}(x\d{1-5})?$ type: string description: '' customFields: type: array description: '' items: title: CustomField type: object properties: fieldId: type: string description: '' fieldValue: type: string description: This can also be an array for fields that need to support list of values; for example, a set of checkboxes. - type: object properties: id: type: string description: '' availableShippingOptions: type: array description: This is available only when "include=consignments.availableShippingOptions" is presented in the URL. items: title: Shipping Option Entity type: object allOf: - title: Selected Shipping Option type: object properties: description: type: string description: Read only. readOnly: true id: type: string description: '' type: type: string description: Specified the type of shipping option. Flat rate, UPS, etc., imageUrl: type: string description: '' cost: type: number description: '' format: double transitTime: type: string description: An estimate of the arrival time. - type: object properties: isRecommended: type: boolean description: Is this shipping method the recommended shipping option or not. selectedShippingOption: title: Selected Shipping Option type: object properties: description: type: string description: Read only. readOnly: true id: type: string description: '' type: type: string description: Specifies the type of shipping option; for example, flat rate, UPS, etc. imageUrl: type: string description: '' cost: type: number description: '' format: double transitTime: type: string description: An estimate of the arrival time. couponDiscounts: type: array description: List of consignment discounts applied through coupons items: title: Consignment Coupon Discount type: object properties: code: type: string description: Coupon code that applied this discount amount: type: number description: '' format: double discounts: type: array description: List of consignment discounts applied through cart level discounts. items: title: Consignment Discount type: object properties: id: type: string description: Discount rule ID that applied this discount shippingCost: type: number description: The shipping cost for this consignment. format: double handlingCost: type: number description: The handling cost of shipping for this consignment. format: double lineItemIds: type: array description: '' items: type: string description: '' coupons: type: array description: Coupons applied at checkout level. items: $ref: '#/components/schemas/CheckoutCoupon' orderId: type: string description: '' shippingCostTotal: type: number description: Shipping cost before any discounts are applied. format: float giftWrappingCostTotal: type: number description: Gift wrapping for all items, including or excluding tax. handlingCostTotal: type: number description: Handling cost for all consignments including or excluding tax. format: float taxTotal: type: number description: '' format: float taxes: type: array items: type: object properties: name: type: string description: Name of the tax charged. This is either the system default or the custom name created for the tax. example: Texas Taxes amount: type: number description: Amount of the tax. format: float example: 1.12 subtotal: type: number description: Subtotal of the checkout before applying item-level discounts. Tax inclusive based on the store settings. format: float grandTotal: type: number description: The total payable amount, before applying any store credit or gift certificate. format: float giftCertificates: type: array description: Applied gift certificate (as a payment method). items: title: Gift Certificate type: object properties: balance: type: number description: '' format: double code: type: string description: '' purchaseDate: type: string description: '' format: date remaining: type: number description: '' format: double used: type: number description: '' format: double description: The values presented here are projections of how much we would be using out of an existing gift certificate. createdTime: type: string description: Time when the cart was created. updatedTime: type: string description: Time when the cart was last updated. customerMessage: type: string description: Shopperʼs message provided as details for the order to be created from this cart. outstandingBalance: type: number description: '`grandTotal` subtract the store-credit amount ' isStoreCreditApplied: type: boolean description: '`true` value indicates StoreCredit has been applied. ' x-internal: false securitySchemes: X-Auth-Token: name: X-Auth-Token description: '### OAuth scopes | UI Name | Permission | Parameter | |:--|:--|:-| | Information & Settings | read-only | `store_v2_information_read_only`| | Information & Settings | modify | `store_v2_information` | ### Authentication header | Header | Argument | Description | |:-|:|:| | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/docs/start/authentication/api-accounts). | ### Further reading For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#x-auth-token-header-example-requests). For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/docs/start/authentication/api-accounts#oauth-scopes). For a list of API status codes, see [API Status Codes](/docs/start/about/status-codes).' type: apiKey in: header