BigCommerce · Schema

coupon_Base

E-CommerceRetailCatalogOrdersCheckoutPaymentsSaaS

Properties

Name Type Description
name string The name of the coupon. The value must be unique.
type string
amount string The discount to apply to an order, as either an amount or a percentage. This field’s usage is determined by the coupon `type`. For example, a `type` of + `percentage_discount` would determine a percen
min_purchase string Specifies a minimum value that an order must have before the coupon can be applied to it.
expires string Specifies when a coupon expires. Coupons need not have an expiry date – you can also control expiry via + `max_uses` or `max_uses_per_customer`. If you do use this date field, the value must be in
enabled boolean If the coupon is enabled, this field’s value is `true`; otherwise, `false`.
code string The coupon code that customers will use to receive their discounts. Value must be unique. Only letters, numbers, white space, underscores, and hyphens are allowed.
applies_to object If it is not included in the PUT request, its existing value on the coupon will be cleared. Also required to be set on the POST request
max_uses integer Maximum number of times this coupon can be used.
max_uses_per_customer integer Maximum number of times each customer can use this coupon.
restricted_to object
shipping_methods array This is a list of shipping-method names. A shipping method must be enabled on the store to use it with a coupon. To check which shipping methods are enabled, please use the [List Shipping Methods](/ar
View JSON Schema on GitHub

JSON Schema

bigcommerce-coupon-base-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/coupon_Base",
  "title": "coupon_Base",
  "required": [
    "amount",
    "applies_to",
    "code",
    "name",
    "type"
  ],
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the coupon. The value must be unique.",
      "example": "Australia Customers Discount",
      "maxLength": 100
    },
    "type": {
      "type": "string",
      "enum": [
        "per_item_discount",
        "per_total_discount",
        "shipping_discount",
        "free_shipping",
        "percentage_discount",
        "promotion"
      ]
    },
    "amount": {
      "type": "string",
      "description": "The discount to apply to an order, as either an amount or a percentage. This field\u2019s usage is determined by the coupon `type`. For example, a `type` of + `percentage_discount` would determine a percentage here.",
      "example": "5"
    },
    "min_purchase": {
      "type": "string",
      "description": "Specifies a minimum value that an order must have before the coupon can be applied to it.",
      "example": "25"
    },
    "expires": {
      "type": "string",
      "description": "Specifies when a coupon expires. Coupons need not have an expiry date \u2013 you can also control expiry via + `max_uses` or `max_uses_per_customer`. If you do use this date field, the value must be in <a href=\"http://tools.ietf.org/html/rfc2822#section-3.3\" target=\"_blank\">RFC 2822</a> format."
    },
    "enabled": {
      "type": "boolean",
      "description": "If the coupon is enabled, this field\u2019s value is `true`; otherwise, `false`.",
      "example": true
    },
    "code": {
      "pattern": "[a-zA-Z0-9_\\ -]",
      "type": "string",
      "description": "The coupon code that customers will use to receive their discounts. Value must be unique. Only letters, numbers, white space, underscores, and hyphens are allowed.",
      "example": "S2549JM0Y",
      "maxLength": 50
    },
    "applies_to": {
      "type": "object",
      "properties": {
        "ids": {
          "type": "array",
          "description": "ID of either the products or categories",
          "items": {
            "type": "integer"
          }
        },
        "entity": {
          "type": "string",
          "description": "What the discount applies to. Can be products or categories."
        }
      },
      "description": "If it is not included in the PUT request, its existing value on the coupon will be cleared. Also required to be set on the POST request"
    },
    "max_uses": {
      "type": "integer",
      "description": "Maximum number of times this coupon can be used.",
      "example": 25
    },
    "max_uses_per_customer": {
      "type": "integer",
      "description": "Maximum number of times each customer can use this coupon.",
      "example": 0
    },
    "restricted_to": {
      "type": "object",
      "properties": {
        "countries": {
          "type": "string"
        }
      }
    },
    "shipping_methods": {
      "type": "array",
      "description": "This is a list of shipping-method names. A shipping method must be enabled on the store to use it with a coupon. To check which shipping methods are enabled, please use the [List Shipping Methods](/archive/store-operations/v2-catalog-products/v2-products#list-shipping-methods) endpoint.",
      "items": {
        "type": "string"
      }
    }
  },
  "example": {
    "id": 2,
    "name": "Australia Customers Discount",
    "type": "per_item_discount",
    "amount": "5",
    "min_purchase": "25",
    "expires": "",
    "enabled": true,
    "code": "S2549JM0Y",
    "applies_to": {
      "entity": "categories",
      "ids": [
        0,
        3
      ]
    },
    "num_uses": 0,
    "max_uses": 25,
    "max_uses_per_customer": 0,
    "restricted_to": {
      "countries": "AU"
    },
    "shipping_methods": [
      "shipping_endicia"
    ],
    "date_created": "Tue, 13 Mar 2018 16:18:59 +0000"
  },
  "x-internal": false
}