# Create a Session

## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /v1/checkout/sessions:
    post:
      summary: Create a Session
      deprecated: false
      description: Creates a Session object.
      tags:
        - API Reference/Checkout
      parameters:
        - name: Accept
          in: header
          description: ''
          required: true
          example: application/json
          schema:
            type: string
        - name: Content-Type
          in: header
          description: ''
          required: true
          example: application/json
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              x-apifox-refs:
                01GMQJWKNBZG3CK5WN40H82RDT: &ref_6
                  $ref: '#/components/schemas/Session'
                  x-apifox-overrides:
                    id: null
                    object: null
                    customer_details: null
                    invoice: null
                    invoice_creation: null
                    setup_intent: null
                    shipping_cost: null
                    locale: null
                    consent: null
                    consent_collection: null
                    submit_type: null
                    custom_text: null
                    payment_method_collection: null
                    subscription: null
                    after_expiration: null
                    automatic_tax: null
                    total_details: null
                    recovered_from: null
                    url: null
                    success_url: &ref_3
                      type: string
                      description: >-
                        The URL the customer will be directed to after the
                        payment or subscription creation is successful.
                    status: null
                    shipping: null
                    payment_status: null
                    payment_link: null
                    payment_intent: null
                    mode: &ref_2
                      type: string
                      description: >-
                        The mode of the Checkout Session. Only payment is
                        supported now.
                      enum:
                        - payment
                        - subscription
                      x-apifox-enum:
                        - value: payment
                          name: ''
                          description: Accept one-time payments
                        - value: subscription
                          name: ''
                          description: Use Wooshpay to set up fixed-price subscriptions.
                    livemode: null
                    currency: null
                    created: null
                    cancel_url: &ref_0
                      type: string
                      description: >-
                        The URL the customer will be directed to if they decide
                        to cancel payment and return to your website.
                    amount_total: null
                    amount_subtotal: null
                    line_items: null
                    metadata: &ref_1
                      type: object
                      properties: {}
                      x-apifox-orders: []
                      description: >-
                        Set of key-value pairs that you can attach to an object.
                        This can be useful for storing additional information
                        about the object in a structured format.
                      x-apifox-ignore-properties: []
                  required:
                    - mode
                    - success_url
              x-apifox-orders:
                - 01GMQJWKNBZG3CK5WN40H82RDT
                - payment_intent_data
                - line_items
                - discounts
                - subscription_data
              properties:
                billing_address_collection:
                  type: string
                  description: >-
                    Describes whether Checkout should collect the customer’s
                    billing address.
                  enum:
                    - required
                    - auto
                  x-apifox-enum:
                    - value: required
                      name: ''
                      description: ''
                    - value: auto
                      name: ''
                      description: ''
                cancel_url: *ref_0
                client_reference_id:
                  type: string
                  description: >-
                    A unique string to reference the Checkout Session. This can
                    be a customer ID, a cart ID, or similar, and can be used to
                    reconcile the Session with your internal systems.
                customer:
                  type: string
                  description: 'The ID of the customer for this Session. '
                customer_email:
                  type: string
                  description: >-
                    If provided, this value will be used when the Customer
                    object is created. If not provided, customers will be asked
                    to enter their email address. Use this parameter to prefill
                    customer data if you already have an email on file. To
                    access information about the customer once the payment flow
                    is complete, use the customer attribute.
                expires_at:
                  type: integer
                  description: >-
                    The timestamp at which the Checkout Session will expire. The
                    Epoch time in seconds at which the Checkout Session will
                    expire. It can be anywhere from 1 to 24 hours after Checkout
                    Session creation. By default, this value is 24 hours from
                    creation.
                metadata: *ref_1
                mode: *ref_2
                payment_method_options: &ref_7
                  description: >-
                    Payment-method-specific configuration for the PaymentIntent
                    or SetupIntent of this CheckoutSession.
                  $ref: '#/components/schemas/Payment%20Method%20Options'
                payment_method_types:
                  type: array
                  items:
                    type: string
                  description: >-
                    A list of the types of payment methods (e.g. card) this
                    Checkout Session is allowed to accept.
                phone_number_collection:
                  type: object
                  properties:
                    enabled:
                      type: boolean
                      description: >-
                        Indicates whether phone number collection is enabled for
                        the session.
                  x-apifox-orders:
                    - enabled
                  description: >-
                    Details on the state of phone number collection for the
                    session. phone_number_collection.enabled boolean Indicates
                    whether phone number collection is enabled for the session
                  x-apifox-ignore-properties: []
                shipping_address_collection:
                  type: object
                  properties:
                    allowed_countries:
                      type: array
                      items:
                        type: string
                      description: >-
                        An array of two-letter ISO country codes representing
                        which countries Checkout should provide as options for
                        shipping locations. 
                  description: >-
                    When set, provides configuration for Checkout to collect a
                    shipping address from a customer.
                  x-apifox-orders:
                    - allowed_countries
                  x-apifox-ignore-properties: []
                success_url: *ref_3
                allow_promotion_codes:
                  type: boolean
                  description: Enables user redeemable promotion codes.
                customer_creation:
                  type: string
                  description: >-
                    Configure whether a Checkout Session creates a Customer when
                    the Checkout Session completes. Can only be set in payment
                    and setup mode.
                  enum:
                    - always
                    - if_required
                  x-apifox-enum:
                    - value: always
                      name: ''
                      description: >-
                        The Checkout Session will always create a Customer when
                        a Session confirmation is attempted.
                    - value: if_required
                      name: ''
                      description: >-
                        The Checkout Session will only create a Customer if it
                        is required for Session confirmation. Currently, only
                        subscription mode Sessions require a Customer.
                payment_intent_data:
                  type: object
                  properties:
                    capture_method:
                      type: string
                      description: >-
                        Controls when the funds will be captured from the
                        customer’s account. Possible enum
                        values：automatic(default) and manual
                    description:
                      type: string
                      description: >-
                        An arbitrary string attached to the object. Often useful
                        for displaying to users.
                    shipping: &ref_32
                      $ref: '#/components/schemas/Shipping'
                    billing_details:
                      $ref: '#/components/schemas/Billing%20Details'
                    merchant_order_id:
                      type: string
                      description: >-
                        The order ID created in the merchant's order system that
                        corresponds to this PaymentIntent
                    merchant_user_id:
                      type: string
                      description: >-
                        The user ID created in merchant's order system that
                        corresponds to this PaymentIntent
                    metadata:
                      type: object
                      properties: {}
                      description: >-
                        A set of key-value pairs that you can attach to an
                        object. This can be useful for storing additional
                        information about the object in a structured format.
                      x-apifox-orders: []
                      x-apifox-ignore-properties: []
                  description: >-
                    A subset of parameters to be passed to PaymentIntent
                    creation for Checkout Sessions in payment mode.
                  x-apifox-orders:
                    - capture_method
                    - description
                    - shipping
                    - billing_details
                    - merchant_order_id
                    - merchant_user_id
                    - metadata
                  x-apifox-ignore-properties: []
                line_items:
                  type: array
                  items:
                    type: object
                    properties:
                      price:
                        type: string
                        description: "Required conditionally. The\_ID\_of\_the\_Price\_object.\_One\_of\_price\_or\_price_data\_is\_required."
                      price_data:
                        description: >-
                          Required conditionally.Data used to generate a new
                          Price object inline. One of price or price_data is
                          required. For more details of price_data, please refer
                          to the endpoint of 'create a price'.
                        type: object
                        x-apifox-refs:
                          01GMQMBEXSM9Q9SEXYKPQ8GR47: &ref_8
                            $ref: '#/components/schemas/Price'
                            x-apifox-overrides:
                              unit_amount_decimal: null
                              transform_quantity: null
                              tiers_mode: null
                              tax_behavior: null
                              custom_unit_amount: null
                              id: null
                              object: null
                              created: null
                              livemode: null
                              currency: &ref_4
                                type: string
                                description: 'Three-letter ISO currency code, in lowercase. '
                              unit_amount: &ref_5
                                type: integer
                                description: >-
                                  The unit amount in cents to be charged,
                                  represented as a whole integer if possible.
                                  Only set if billing_scheme=per_unit.
                              tiers: null
                            required:
                              - currency
                              - unit_amount
                        x-apifox-orders:
                          - 01GMQMBEXSM9Q9SEXYKPQ8GR47
                          - product_data
                        properties:
                          active:
                            type: boolean
                            description: Whether the price can be used for new purchases.
                          billing_scheme:
                            type: string
                            description: >-
                              Describes how to compute the price per period.
                              Either per_unit or tiered
                            enum:
                              - per_unit
                              - tiered
                            x-apifox-enum:
                              - value: per_unit
                                name: ''
                                description: only per_unit is supported now.
                              - value: tiered
                                name: ''
                                description: ''
                          currency: *ref_4
                          lookup_key:
                            type: string
                            description: >-
                              A lookup key used to retrieve prices dynamically
                              from a static string. This may be up to 200
                              characters.
                          metadata:
                            type: object
                            properties: {}
                            x-apifox-orders: []
                            description: >-
                              Set of key-value pairs that you can attach to an
                              object. This can be useful for storing additional
                              information about the object in a structured
                              format.
                            x-apifox-ignore-properties: []
                          nickname:
                            type: string
                            description: >-
                              A brief description of the price, hidden from
                              customers.
                          product:
                            type: string
                            description: >-
                              The ID of the product this price is associated
                              with.
                          type:
                            type: string
                            description: >-
                              One of one_time or recurring depending on whether
                              the price is for a one-time purchase or a
                              recurring (subscription) purchase.
                            enum:
                              - one_time
                              - recurring
                            x-apifox-enum:
                              - value: one_time
                                name: ''
                                description: only one-time is supported now.
                              - value: recurring
                                name: ''
                                description: ''
                          unit_amount: *ref_5
                          recurring:
                            type: object
                            properties:
                              interval:
                                type: string
                                description: >-
                                  The frequency at which a subscription is
                                  billed. One of day, week, month or year.
                                enum:
                                  - day
                                  - week
                                  - month
                                  - year
                                x-apifox-enum:
                                  - value: day
                                    name: ''
                                    description: ''
                                  - value: week
                                    name: ''
                                    description: ''
                                  - value: month
                                    name: ''
                                    description: ''
                                  - value: year
                                    name: ''
                                    description: ''
                              interval_count:
                                type: integer
                                description: >-
                                  The number of intervals (specified in the
                                  interval attribute) between subscription
                                  billings. For example, interval=month and
                                  interval_count=3 bills every 3 months.
                              usage_type:
                                type: string
                                description: >-
                                  Configures how the quantity per period should
                                  be determined.
                                enum:
                                  - licensed
                                x-apifox-enum:
                                  - value: licensed
                                    name: ''
                                    description: ''
                            x-apifox-orders:
                              - interval
                              - interval_count
                              - usage_type
                            description: The recurring components of a price
                            required:
                              - interval
                            x-apifox-ignore-properties: []
                          product_data:
                            type: object
                            properties:
                              description:
                                type: string
                                description: >-
                                  The product’s description, meant to be
                                  displayable to the customer. Use this field to
                                  optionally store a long form explanation of
                                  the product being sold for your own rendering
                                  purposes.
                              images:
                                type: array
                                items:
                                  type: string
                                description: >-
                                  A list of up to 8 URLs of images for this
                                  product, meant to be displayable to the
                                  customer.
                              metadata:
                                type: object
                                properties: {}
                                x-apifox-orders: []
                                description: >-
                                  Set of key-value pairs that you can attach to
                                  an object. This can be useful for storing
                                  additional information about the object in a
                                  structured format.
                                x-apifox-ignore-properties: []
                              name:
                                type: string
                                description: >-
                                  The product’s name, meant to be displayable to
                                  the customer. Whenever this product is sold
                                  via a subscription, name will show up on
                                  associated invoice line item descriptions.
                            x-apifox-orders:
                              - 01HA1S4TPWRETVZ5MCCXVRZABR
                            description: >-
                              REQUIRED CONDITIONALLY. Data used to generate a
                              new product object inline. One of product or
                              product_data is required.
                            x-apifox-refs:
                              01HA1S4TPWRETVZ5MCCXVRZABR:
                                $ref: '#/components/schemas/Product'
                                x-apifox-overrides:
                                  id: null
                                  object: null
                                  active: null
                                  created: null
                                  livemode: null
                                  tax_code: null
                                  unit_label: null
                                  shippable: null
                                  package_dimensions: null
                                  default_price: null
                                  url: null
                                  updated: null
                                  statement_descriptor: null
                            required:
                              - name
                            x-apifox-ignore-properties:
                              - description
                              - images
                              - metadata
                              - name
                        required:
                          - currency
                          - unit_amount
                        x-apifox-ignore-properties:
                          - active
                          - billing_scheme
                          - currency
                          - lookup_key
                          - metadata
                          - nickname
                          - product
                          - type
                          - unit_amount
                          - recurring
                      quantity:
                        type: string
                        description: >-
                          Required unless metered billing. The quantity of the
                          line item being purchased. 
                    x-apifox-orders:
                      - price
                      - price_data
                      - quantity
                    required:
                      - quantity
                    x-apifox-ignore-properties: []
                  description: >-
                    A list of items the customer is purchasing. Use this
                    parameter to pass one-time or recurring Prices.
                discounts:
                  type: array
                  items:
                    type: object
                    properties:
                      coupon:
                        type: string
                        description: The ID of the coupon to apply to this Session.
                      iterations:
                        type: integer
                        description: >-
                          This parameter indicates how many billing cycles the
                          discount applies to in the subscription. The default
                          value is 1.
                    x-apifox-orders:
                      - coupon
                      - iterations
                    x-apifox-ignore-properties: []
                  description: >-
                    The coupon or promotion code to apply to this Session.
                    Currently, only up to one may be specified.
                subscription_data:
                  type: object
                  properties:
                    trial_period_days:
                      type: integer
                      description: >-
                        Integer representing the number of trial period days
                        before the customer is charged for the first time. Has
                        to be at least 1.
                    metadata:
                      type: object
                      properties: {}
                      x-apifox-orders: []
                      description: >-
                        Set of key-value pairs that you can attach to an object.
                        This can be useful for storing additional information
                        about the object in a structured format.
                      x-apifox-ignore-properties: []
                  x-apifox-orders:
                    - trial_period_days
                    - metadata
                  x-apifox-ignore-properties: []
              required:
                - mode
                - success_url
              x-apifox-ignore-properties:
                - billing_address_collection
                - cancel_url
                - client_reference_id
                - customer
                - customer_email
                - expires_at
                - metadata
                - mode
                - payment_method_options
                - payment_method_types
                - phone_number_collection
                - shipping_address_collection
                - success_url
                - allow_promotion_codes
                - customer_creation
            example:
              cancel_url: https://yourwebsite.com
              mode: payment
              success_url: https://yourwebsite.com
              line_items:
                - price_data:
                    currency: GBP
                    unit_amount: 2000
                    product_data:
                      name: apple
                  quantity: 1
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                x-apifox-refs:
                  01GMQMXEM1K94XFE6XSTGHXTRW: *ref_6
                x-apifox-orders:
                  - 01GMQMXEM1K94XFE6XSTGHXTRW
                properties:
                  id:
                    type: string
                    description: >-
                      Unique identifier for the object, like "cs_xxx" in live
                      environment and "cs_test_xxx" in test environment.
                  object:
                    type: string
                    description: value is "checkout.session"
                  amount_subtotal:
                    type: integer
                    description: Total of all items before discounts or taxes are applied.
                  amount_total:
                    type: integer
                    description: Total of all items after discounts and taxes are applied.
                  billing_address_collection:
                    type: string
                    description: >-
                      Describes whether Checkout should collect the customer’s
                      billing address.
                    enum:
                      - required
                      - auto
                    x-apifox-enum:
                      - value: required
                        name: ''
                        description: ''
                      - value: auto
                        name: ''
                        description: ''
                  cancel_url:
                    type: string
                    description: >-
                      The URL the customer will be directed to if they decide to
                      cancel payment and return to your website.
                  client_reference_id:
                    type: string
                    description: >-
                      A unique string to reference the Checkout Session. This
                      can be a customer ID, a cart ID, or similar, and can be
                      used to reconcile the Session with your internal systems.
                  created:
                    type: integer
                    description: >-
                      Time at which the object was created. Measured in seconds
                      since the Unix epoch.
                  currency:
                    type: string
                    description: Three-letter ISO currency code
                  customer:
                    type: string
                    description: 'The ID of the customer for this Session. '
                  customer_email:
                    type: string
                    description: >-
                      If provided, this value will be used when the Customer
                      object is created. If not provided, customers will be
                      asked to enter their email address. Use this parameter to
                      prefill customer data if you already have an email on
                      file. To access information about the customer once the
                      payment flow is complete, use the customer attribute.
                  expires_at:
                    type: integer
                    description: >-
                      The timestamp at which the Checkout Session will expire.
                      The Epoch time in seconds at which the Checkout Session
                      will expire. It can be anywhere from 1 to 24 hours after
                      Checkout Session creation. By default, this value is 24
                      hours from creation.
                  livemode:
                    type: boolean
                    description: >-
                      Has the value true if the object exists in live mode or
                      the value false if the object exists in test mode.
                  metadata:
                    type: object
                    properties: {}
                    x-apifox-orders: []
                    description: >-
                      Set of key-value pairs that you can attach to an object.
                      This can be useful for storing additional information
                      about the object in a structured format.
                    x-apifox-ignore-properties: []
                  mode:
                    type: string
                    description: >-
                      The mode of the Checkout Session. Only payment is
                      supported now.
                  payment_intent:
                    type: string
                    description: >-
                      The ID of the PaymentIntent for Checkout Sessions in
                      payment mode.
                  payment_link:
                    type: string
                    description: The ID of the Payment Link that created this Session.
                  payment_method_options: *ref_7
                  payment_method_types:
                    type: array
                    items:
                      type: string
                    description: >-
                      A list of the types of payment methods (e.g. card) this
                      Checkout Session is allowed to accept.
                  payment_status:
                    type: string
                    description: >-
                      The payment status of the Checkout Session, one of paid,
                      unpaid, or no_payment_required. You can use this value to
                      decide when to fulfill your customer’s order.
                  phone_number_collection:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                        description: >-
                          Indicates whether phone number collection is enabled
                          for the session.
                    x-apifox-orders:
                      - enabled
                    description: >-
                      Details on the state of phone number collection for the
                      session. phone_number_collection.enabled boolean Indicates
                      whether phone number collection is enabled for the session
                    x-apifox-ignore-properties: []
                  shipping_address_collection:
                    type: object
                    properties:
                      allowed_countries:
                        type: array
                        items:
                          type: string
                        description: >-
                          An array of two-letter ISO country codes representing
                          which countries Checkout should provide as options for
                          shipping locations. 
                    description: >-
                      When set, provides configuration for Checkout to collect a
                      shipping address from a customer.
                    x-apifox-orders:
                      - allowed_countries
                    x-apifox-ignore-properties: []
                  shipping:
                    description: Shipping information for this Checkout Session.
                    type: object
                    x-apifox-refs:
                      01GMQHM3R25RQHHK8GY2QSZHB6: &ref_9
                        type: object
                        properties: {}
                    x-apifox-orders:
                      - 01GMQHM3R25RQHHK8GY2QSZHB6
                    properties:
                      address: &ref_31
                        $ref: '#/components/schemas/Address'
                      carrier:
                        type: string
                        description: >-
                          The delivery service that shipped a physical product,
                          such as FedEx, UPS, USPS, etc. 
                      name:
                        type: string
                        description: 'Recipient name. '
                      phone:
                        type: string
                        description: 'Recipient phone (including extension). '
                      tracking_number:
                        type: string
                        description: >-
                          The tracking number for a physical product, obtained
                          from the delivery service. If multiple tracking
                          numbers were generated for this purchase, please
                          separate them with commas.
                    x-apifox-ignore-properties:
                      - address
                      - carrier
                      - name
                      - phone
                      - tracking_number
                  status:
                    type: string
                    description: >-
                      The status of the Checkout Session, one of open, complete,
                      or expired. 
                    enum:
                      - open
                      - complete
                      - expired
                    x-apifox-enum:
                      - value: open
                        name: ''
                        description: >-
                          The checkout session is still in progress. Payment
                          processing has not started
                      - value: complete
                        name: ''
                        description: >-
                          The checkout session is complete. Payment processing
                          may still be in progress.
                      - value: expired
                        name: ''
                        description: >-
                          The checkout session has expired. No further
                          processing will occur.
                  success_url:
                    type: string
                    description: >-
                      The URL the customer will be directed to after the payment
                      or subscription creation is successful.
                  url:
                    type: string
                    description: >-
                      The URL to the Checkout Session. Redirect customers to
                      this URL to take them to Checkout. 
                  line_items:
                    description: >-
                      The line items purchased by the customer. This field is
                      not included by default. To include it in the response,
                      expand the line_items field.
                    type: object
                    x-apifox-refs:
                      01GMQGBG5GSFNYSAE9WNRWXVS4: &ref_37
                        $ref: '#/components/schemas/List'
                        x-apifox-overrides:
                          data: &ref_38
                            type: array
                            items:
                              type: object
                              x-apifox-refs:
                                01GMQGC5BJT0A3P7BG6BZD73SD:
                                  $ref: '#/components/schemas/item'
                                  x-apifox-overrides:
                                    amount_tax: null
                                    taxes: null
                              x-apifox-orders:
                                - 01GMQGC5BJT0A3P7BG6BZD73SD
                              properties:
                                id: &ref_68
                                  type: string
                                  description: >-
                                    Unique identifier for the object, like
                                    "li_xxx"
                                object: &ref_69
                                  type: string
                                  description: >-
                                    String representing the object’s type.
                                    Objects of the same type share the same
                                    value.
                                amount_subtotal: &ref_70
                                  type: string
                                  description: >-
                                    Total before any discounts or taxes are
                                    applied.
                                amount_total: &ref_71
                                  type: string
                                  description: Total after discounts and taxes.
                                currency: &ref_72
                                  type: string
                                  description: Three-letter ISO currency code.
                                description: &ref_73
                                  type: string
                                  description: >-
                                    An arbitrary string attached to the object.
                                    Often useful for displaying to users.
                                    Defaults to product name.
                                price:
                                  type: object
                                  x-apifox-refs: &ref_74
                                    01GMQG5R25JKZG1CEB31ZYK9A1: *ref_8
                                  x-apifox-orders: &ref_75
                                    - 01GMQG5R25JKZG1CEB31ZYK9A1
                                  properties:
                                    id: &ref_10
                                      type: string
                                      description: >-
                                        Unique identifier for the object, like
                                        "price_xxxx".
                                    object: &ref_11
                                      type: string
                                      description: '''price'''
                                    active: &ref_12
                                      type: boolean
                                      description: >-
                                        Whether the price can be used for new
                                        purchases.
                                    billing_scheme:
                                      type: string
                                      description: >-
                                        Describes how to compute the price per
                                        period. Either per_unit or tiered
                                      enum: &ref_13
                                        - per_unit
                                        - tiered
                                      x-apifox-enum:
                                        - value: per_unit
                                          name: ''
                                          description: only per_unit is supported now.
                                        - value: tiered
                                          name: ''
                                          description: ''
                                    created: &ref_14
                                      type: integer
                                      description: >-
                                        Time at which the object was created.
                                        Measured in seconds since the Unix
                                        epoch.
                                    currency: &ref_15
                                      type: string
                                      description: >-
                                        Three-letter ISO currency code, in
                                        uppercase. 
                                    livemode: &ref_16
                                      type: boolean
                                      description: >-
                                        Has the value true if the object exists
                                        in live mode or the value false if the
                                        object exists in test mode.
                                    lookup_key: &ref_17
                                      type: string
                                      description: >-
                                        A lookup key used to retrieve prices
                                        dynamically from a static string. This
                                        may be up to 200 characters.
                                    metadata:
                                      type: object
                                      properties: {}
                                      x-apifox-orders: &ref_18 []
                                      description: >-
                                        Set of key-value pairs that you can
                                        attach to an object. This can be useful
                                        for storing additional information about
                                        the object in a structured format.
                                      x-apifox-ignore-properties: []
                                    nickname: &ref_19
                                      type: string
                                      description: >-
                                        A brief description of the price, hidden
                                        from customers.
                                    product: &ref_20
                                      type: string
                                      description: >-
                                        The ID of the product this price is
                                        associated with.
                                    type:
                                      type: string
                                      description: >-
                                        One of one_time or recurring depending
                                        on whether the price is for a one-time
                                        purchase or a recurring (subscription)
                                        purchase.
                                      enum: &ref_21
                                        - one_time
                                        - recurring
                                      x-apifox-enum:
                                        - value: one_time
                                          name: ''
                                          description: only one-time is supported now.
                                        - value: recurring
                                          name: ''
                                          description: ''
                                    unit_amount: &ref_22
                                      type: integer
                                      description: >-
                                        The unit amount in cents to be charged,
                                        represented as a whole integer if
                                        possible. Only set if
                                        billing_scheme=per_unit.
                                    recurring:
                                      type: object
                                      properties:
                                        interval:
                                          type: string
                                          description: >-
                                            The frequency at which a subscription is
                                            billed. One of day, week, month or year.
                                          enum: &ref_23
                                            - day
                                            - week
                                            - month
                                            - year
                                          x-apifox-enum:
                                            - value: day
                                              name: ''
                                              description: ''
                                            - value: week
                                              name: ''
                                              description: ''
                                            - value: month
                                              name: ''
                                              description: ''
                                            - value: year
                                              name: ''
                                              description: ''
                                        interval_count: &ref_24
                                          type: integer
                                          description: >-
                                            The number of intervals (specified in
                                            the interval attribute) between
                                            subscription billings. For example,
                                            interval=month and interval_count=3
                                            bills every 3 months.
                                        usage_type:
                                          type: string
                                          description: >-
                                            Configures how the quantity per period
                                            should be determined.
                                          enum: &ref_25
                                            - licensed
                                          x-apifox-enum:
                                            - value: licensed
                                              name: ''
                                              description: ''
                                      x-apifox-orders: &ref_26
                                        - interval
                                        - interval_count
                                        - usage_type
                                      description: The recurring components of a price
                                      required:
                                        - interval
                                      x-apifox-ignore-properties: []
                                    tiers:
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          up_to: &ref_27
                                            type: string
                                            description: >-
                                              Specifies the upper bound of this tier.
                                              The lower bound of a tier is the upper
                                              bound of the previous tier adding one.
                                              Use inf to define a fallback tier.
                                          flat_amount: &ref_28
                                            type: string
                                            description: >-
                                              The flat billing amount for an entire
                                              tier, regardless of the number of units
                                              in the tier.
                                          unit_amount: &ref_29
                                            type: string
                                            description: >-
                                              The per unit billing amount for each
                                              individual unit for which this tier
                                              applies.
                                        x-apifox-orders: &ref_30
                                          - up_to
                                          - flat_amount
                                          - unit_amount
                                        x-apifox-ignore-properties: []
                                      description: （未实现）
                                  description: The price used to generate the line item.
                                  x-apifox-ignore-properties:
                                    - id
                                    - object
                                    - active
                                    - billing_scheme
                                    - created
                                    - currency
                                    - livemode
                                    - lookup_key
                                    - metadata
                                    - nickname
                                    - product
                                    - type
                                    - unit_amount
                                    - recurring
                                    - tiers
                                quantity: &ref_76
                                  type: string
                                  description: The quantity of products being purchased.
                                discounts:
                                  type: array
                                  items:
                                    type: object
                                    x-apifox-refs: &ref_77
                                      01J0Q497B9M5WGP7SNHD8Q4ARN:
                                        $ref: '#/components/schemas/Discounts'
                                        x-apifox-overrides:
                                          invoice: null
                                          invoice_item: null
                                    x-apifox-orders: &ref_78
                                      - 01J0Q497B9M5WGP7SNHD8Q4ARN
                                    properties:
                                      id: &ref_58
                                        type: string
                                        description: >-
                                          The ID of the discount object. Discounts
                                          cannot be fetched by ID.
                                      object: &ref_59
                                        type: string
                                        description: >-
                                          String representing the object’s type.
                                          Objects of the same type share the same
                                          value.
                                      checkout_session: &ref_60
                                        type: string
                                        description: >-
                                          The Checkout session that this coupon is
                                          applied to, if it is applied to a
                                          particular session in payment mode. Will
                                          not be present for subscription mode.
                                      coupon:
                                        type: object
                                        x-apifox-refs: &ref_61
                                          01HV3JTJ0FGTEWBDHHFJ74FZBE:
                                            $ref: '#/components/schemas/Coupons'
                                            x-apifox-overrides:
                                              duration_in_weeks: null
                                              duration_in_months: null
                                              duration: null
                                              applies_to: null
                                        x-apifox-orders: &ref_62
                                          - 01HV3JTJ0FGTEWBDHHFJ74FZBE
                                        properties:
                                          id: &ref_42
                                            type: string
                                            description: Unique identifier for the object.
                                          amount_off: &ref_43
                                            type: integer
                                            description: >-
                                              Amount (in the currency specified) that
                                              will be taken off the subtotal of any
                                              invoices for this customer.
                                            nullable: true
                                          currency: &ref_44
                                            type: string
                                            description: >-
                                              If amount_off has been set, the
                                              three-letter ISO code for the currency
                                              of the amount to take off.
                                            nullable: true
                                          duration_in_days: &ref_45
                                            type: string
                                            description: >-
                                              Required only if duration is repeating,
                                              in which case it must be a positive
                                              integer that specifies the number of
                                              weeks the discount will be in effect.
                                          object: &ref_46
                                            type: string
                                            description: >-
                                              String representing the object’s type.
                                              Objects of the same type share the same
                                              value.
                                          created: &ref_47
                                            type: integer
                                            description: >-
                                              Time at which the object was created.
                                              Measured in seconds since the Unix
                                              epoch.
                                          livemode: &ref_48
                                            type: boolean
                                            description: >-
                                              Has the value true if the object exists
                                              in live mode or the value false if the
                                              object exists in test mode.
                                          metadata:
                                            type: object
                                            properties: {}
                                            x-apifox-orders: &ref_49 []
                                            description: >-
                                              Set of key-value pairs that you can
                                              attach to an object. This can be useful
                                              for storing additional information about
                                              the object in a structured format.
                                            x-apifox-ignore-properties: []
                                          name: &ref_50
                                            type: string
                                            description: >-
                                              Name of the coupon displayed to
                                              customers on for instance invoices or
                                              receipts.
                                          percent_off: &ref_51
                                            type: number
                                            description: >-
                                              Percent that will be taken off the
                                              subtotal of any invoices for this
                                              customer for the duration of the coupon.
                                              For example, a coupon with percent_off
                                              of 50 will make a $100 invoice $50
                                              instead.
                                            nullable: true
                                          max_redemptions: &ref_52
                                            type: integer
                                            description: >-
                                              Maximum number of times this coupon can
                                              be redeemed, in total, across all
                                              customers, before it is no longer valid.
                                            nullable: true
                                          redeem_by: &ref_53
                                            type: integer
                                            description: >-
                                              Date after which the coupon can no
                                              longer be redeemed.
                                            nullable: true
                                          times_redeemed: &ref_54
                                            type: integer
                                            description: >-
                                              Number of times this coupon has been
                                              applied to a customer.
                                          valid: &ref_55
                                            type: boolean
                                            description: >-
                                              Taking account of the above properties,
                                              whether this coupon can still be applied
                                              to a customer.
                                          currency_options:
                                            type: object
                                            properties:
                                              <currency>.amount_off: &ref_56
                                                type: integer
                                                description: >-
                                                  Amount (in the currency specified) that
                                                  will be taken off the subtotal of any
                                                  invoices for this customer.
                                            description: >-
                                              Coupons defined in each available
                                              currency option. Each key must be a
                                              three-letter ISO currency code and a
                                              supported currency.
                                            x-apifox-orders: &ref_57
                                              - <currency>.amount_off
                                            x-apifox-ignore-properties: []
                                        description: >-
                                          Hash describing the coupon applied to
                                          create this discount.
                                        required:
                                          - duration_in_days
                                        x-apifox-ignore-properties:
                                          - id
                                          - amount_off
                                          - currency
                                          - duration_in_days
                                          - object
                                          - created
                                          - livemode
                                          - metadata
                                          - name
                                          - percent_off
                                          - max_redemptions
                                          - redeem_by
                                          - times_redeemed
                                          - valid
                                          - currency_options
                                      customer: &ref_63
                                        type: string
                                        description: >-
                                          The ID of the customer associated with
                                          this discount.
                                      start: &ref_64
                                        type: integer
                                        description: Date that the coupon was applied.
                                      end: &ref_65
                                        type: 'null'
                                        description: >-
                                          If the coupon has a duration of
                                          repeating, the date that this discount
                                          will end. If the coupon has a duration
                                          of once or forever, this attribute will
                                          be null.
                                      promotion_code: &ref_66
                                        type: 'null'
                                        description: >-
                                          The promotion code applied to create
                                          this discount.
                                      subscription: &ref_67
                                        type: 'null'
                                        description: >-
                                          The subscription that this coupon is
                                          applied to, if it is applied to a
                                          particular subscription.
                                    x-apifox-ignore-properties:
                                      - id
                                      - object
                                      - checkout_session
                                      - coupon
                                      - customer
                                      - start
                                      - end
                                      - promotion_code
                                      - subscription
                                  description: The discounts applied to the line item.
                                amount_discount: &ref_79
                                  type: integer
                                  description: >-
                                    Total discount amount applied. If no
                                    discounts were applied, defaults to 0.
                              x-apifox-ignore-properties:
                                - id
                                - object
                                - amount_subtotal
                                - amount_total
                                - currency
                                - description
                                - price
                                - quantity
                                - discounts
                                - amount_discount
                    x-apifox-orders:
                      - 01GMQGBG5GSFNYSAE9WNRWXVS4
                    properties:
                      object:
                        type: string
                        default: '"list"'
                      url:
                        type: string
                      has_more:
                        type: boolean
                      data:
                        type: array
                        items:
                          type: object
                          x-apifox-refs:
                            01GMQGC5BJT0A3P7BG6BZD73SD: *ref_9
                          x-apifox-orders:
                            - 01GMQGC5BJT0A3P7BG6BZD73SD
                          properties:
                            id:
                              type: string
                              description: Unique identifier for the object, like "li_xxx"
                            object:
                              type: string
                              description: >-
                                String representing the object’s type. Objects
                                of the same type share the same value.
                            amount_subtotal:
                              type: string
                              description: Total before any discounts or taxes are applied.
                            amount_total:
                              type: string
                              description: Total after discounts and taxes.
                            currency:
                              type: string
                              description: Three-letter ISO currency code.
                            description:
                              type: string
                              description: >-
                                An arbitrary string attached to the object.
                                Often useful for displaying to users. Defaults
                                to product name.
                            price:
                              type: object
                              x-apifox-refs:
                                01GMQG5R25JKZG1CEB31ZYK9A1: *ref_9
                              x-apifox-orders:
                                - 01GMQG5R25JKZG1CEB31ZYK9A1
                              properties:
                                id:
                                  type: string
                                  description: >-
                                    Unique identifier for the object, like
                                    "price_xxxx".
                                object:
                                  type: string
                                  description: '''price'''
                                active:
                                  type: boolean
                                  description: >-
                                    Whether the price can be used for new
                                    purchases.
                                billing_scheme:
                                  type: string
                                  description: >-
                                    Describes how to compute the price per
                                    period. Either per_unit or tiered
                                  enum:
                                    - per_unit
                                    - tiered
                                  x-apifox-enum:
                                    - value: per_unit
                                      name: ''
                                      description: only per_unit is supported now.
                                    - value: tiered
                                      name: ''
                                      description: ''
                                created:
                                  type: integer
                                  description: >-
                                    Time at which the object was created.
                                    Measured in seconds since the Unix epoch.
                                currency:
                                  type: string
                                  description: >-
                                    Three-letter ISO currency code, in
                                    uppercase. 
                                livemode:
                                  type: boolean
                                  description: >-
                                    Has the value true if the object exists in
                                    live mode or the value false if the object
                                    exists in test mode.
                                lookup_key:
                                  type: string
                                  description: >-
                                    A lookup key used to retrieve prices
                                    dynamically from a static string. This may
                                    be up to 200 characters.
                                metadata:
                                  type: object
                                  properties: {}
                                  x-apifox-orders: []
                                  description: >-
                                    Set of key-value pairs that you can attach
                                    to an object. This can be useful for storing
                                    additional information about the object in a
                                    structured format.
                                  x-apifox-ignore-properties: []
                                nickname:
                                  type: string
                                  description: >-
                                    A brief description of the price, hidden
                                    from customers.
                                product:
                                  type: string
                                  description: >-
                                    The ID of the product this price is
                                    associated with.
                                type:
                                  type: string
                                  description: >-
                                    One of one_time or recurring depending on
                                    whether the price is for a one-time purchase
                                    or a recurring (subscription) purchase.
                                  enum:
                                    - one_time
                                    - recurring
                                  x-apifox-enum:
                                    - value: one_time
                                      name: ''
                                      description: only one-time is supported now.
                                    - value: recurring
                                      name: ''
                                      description: ''
                                unit_amount:
                                  type: integer
                                  description: >-
                                    The unit amount in cents to be charged,
                                    represented as a whole integer if possible.
                                    Only set if billing_scheme=per_unit.
                                recurring:
                                  type: object
                                  properties:
                                    interval:
                                      type: string
                                      description: >-
                                        The frequency at which a subscription is
                                        billed. One of day, week, month or year.
                                      enum:
                                        - day
                                        - week
                                        - month
                                        - year
                                      x-apifox-enum:
                                        - value: day
                                          name: ''
                                          description: ''
                                        - value: week
                                          name: ''
                                          description: ''
                                        - value: month
                                          name: ''
                                          description: ''
                                        - value: year
                                          name: ''
                                          description: ''
                                    interval_count:
                                      type: integer
                                      description: >-
                                        The number of intervals (specified in
                                        the interval attribute) between
                                        subscription billings. For example,
                                        interval=month and interval_count=3
                                        bills every 3 months.
                                    usage_type:
                                      type: string
                                      description: >-
                                        Configures how the quantity per period
                                        should be determined.
                                      enum:
                                        - licensed
                                      x-apifox-enum:
                                        - value: licensed
                                          name: ''
                                          description: ''
                                  x-apifox-orders:
                                    - interval
                                    - interval_count
                                    - usage_type
                                  description: The recurring components of a price
                                  required:
                                    - interval
                                  x-apifox-ignore-properties: []
                                tiers:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      up_to:
                                        type: string
                                        description: >-
                                          Specifies the upper bound of this tier.
                                          The lower bound of a tier is the upper
                                          bound of the previous tier adding one.
                                          Use inf to define a fallback tier.
                                      flat_amount:
                                        type: string
                                        description: >-
                                          The flat billing amount for an entire
                                          tier, regardless of the number of units
                                          in the tier.
                                      unit_amount:
                                        type: string
                                        description: >-
                                          The per unit billing amount for each
                                          individual unit for which this tier
                                          applies.
                                    x-apifox-orders:
                                      - up_to
                                      - flat_amount
                                      - unit_amount
                                    x-apifox-ignore-properties: []
                                  description: （未实现）
                              description: The price used to generate the line item.
                              x-apifox-ignore-properties:
                                - id
                                - object
                                - active
                                - billing_scheme
                                - created
                                - currency
                                - livemode
                                - lookup_key
                                - metadata
                                - nickname
                                - product
                                - type
                                - unit_amount
                                - recurring
                                - tiers
                            quantity:
                              type: string
                              description: The quantity of products being purchased.
                            discounts:
                              type: array
                              items:
                                type: object
                                x-apifox-refs:
                                  01J0Q497B9M5WGP7SNHD8Q4ARN: *ref_9
                                x-apifox-orders:
                                  - 01J0Q497B9M5WGP7SNHD8Q4ARN
                                properties:
                                  id:
                                    type: string
                                    description: >-
                                      The ID of the discount object. Discounts
                                      cannot be fetched by ID.
                                  object:
                                    type: string
                                    description: >-
                                      String representing the object’s type.
                                      Objects of the same type share the same
                                      value.
                                  checkout_session:
                                    type: string
                                    description: >-
                                      The Checkout session that this coupon is
                                      applied to, if it is applied to a
                                      particular session in payment mode. Will
                                      not be present for subscription mode.
                                  coupon:
                                    type: object
                                    x-apifox-refs:
                                      01HV3JTJ0FGTEWBDHHFJ74FZBE: *ref_9
                                    x-apifox-orders:
                                      - 01HV3JTJ0FGTEWBDHHFJ74FZBE
                                    properties:
                                      id:
                                        type: string
                                        description: Unique identifier for the object.
                                      amount_off:
                                        type: integer
                                        description: >-
                                          Amount (in the currency specified) that
                                          will be taken off the subtotal of any
                                          invoices for this customer.
                                        nullable: true
                                      currency:
                                        type: string
                                        description: >-
                                          If amount_off has been set, the
                                          three-letter ISO code for the currency
                                          of the amount to take off.
                                        nullable: true
                                      duration_in_days:
                                        type: string
                                        description: >-
                                          Required only if duration is repeating,
                                          in which case it must be a positive
                                          integer that specifies the number of
                                          weeks the discount will be in effect.
                                      object:
                                        type: string
                                        description: >-
                                          String representing the object’s type.
                                          Objects of the same type share the same
                                          value.
                                      created:
                                        type: integer
                                        description: >-
                                          Time at which the object was created.
                                          Measured in seconds since the Unix
                                          epoch.
                                      livemode:
                                        type: boolean
                                        description: >-
                                          Has the value true if the object exists
                                          in live mode or the value false if the
                                          object exists in test mode.
                                      metadata:
                                        type: object
                                        properties: {}
                                        x-apifox-orders: []
                                        description: >-
                                          Set of key-value pairs that you can
                                          attach to an object. This can be useful
                                          for storing additional information about
                                          the object in a structured format.
                                        x-apifox-ignore-properties: []
                                      name:
                                        type: string
                                        description: >-
                                          Name of the coupon displayed to
                                          customers on for instance invoices or
                                          receipts.
                                      percent_off:
                                        type: number
                                        description: >-
                                          Percent that will be taken off the
                                          subtotal of any invoices for this
                                          customer for the duration of the coupon.
                                          For example, a coupon with percent_off
                                          of 50 will make a $100 invoice $50
                                          instead.
                                        nullable: true
                                      max_redemptions:
                                        type: integer
                                        description: >-
                                          Maximum number of times this coupon can
                                          be redeemed, in total, across all
                                          customers, before it is no longer valid.
                                        nullable: true
                                      redeem_by:
                                        type: integer
                                        description: >-
                                          Date after which the coupon can no
                                          longer be redeemed.
                                        nullable: true
                                      times_redeemed:
                                        type: integer
                                        description: >-
                                          Number of times this coupon has been
                                          applied to a customer.
                                      valid:
                                        type: boolean
                                        description: >-
                                          Taking account of the above properties,
                                          whether this coupon can still be applied
                                          to a customer.
                                      currency_options:
                                        type: object
                                        properties:
                                          <currency>.amount_off:
                                            type: integer
                                            description: >-
                                              Amount (in the currency specified) that
                                              will be taken off the subtotal of any
                                              invoices for this customer.
                                        description: >-
                                          Coupons defined in each available
                                          currency option. Each key must be a
                                          three-letter ISO currency code and a
                                          supported currency.
                                        x-apifox-orders:
                                          - <currency>.amount_off
                                        x-apifox-ignore-properties: []
                                    description: >-
                                      Hash describing the coupon applied to
                                      create this discount.
                                    required:
                                      - duration_in_days
                                    x-apifox-ignore-properties:
                                      - id
                                      - amount_off
                                      - currency
                                      - duration_in_days
                                      - object
                                      - created
                                      - livemode
                                      - metadata
                                      - name
                                      - percent_off
                                      - max_redemptions
                                      - redeem_by
                                      - times_redeemed
                                      - valid
                                      - currency_options
                                  customer:
                                    type: string
                                    description: >-
                                      The ID of the customer associated with
                                      this discount.
                                  start:
                                    type: integer
                                    description: Date that the coupon was applied.
                                  end:
                                    type: 'null'
                                    description: >-
                                      If the coupon has a duration of repeating,
                                      the date that this discount will end. If
                                      the coupon has a duration of once or
                                      forever, this attribute will be null.
                                  promotion_code:
                                    type: 'null'
                                    description: >-
                                      The promotion code applied to create this
                                      discount.
                                  subscription:
                                    type: 'null'
                                    description: >-
                                      The subscription that this coupon is
                                      applied to, if it is applied to a
                                      particular subscription.
                                x-apifox-ignore-properties:
                                  - id
                                  - object
                                  - checkout_session
                                  - coupon
                                  - customer
                                  - start
                                  - end
                                  - promotion_code
                                  - subscription
                              description: The discounts applied to the line item.
                            amount_discount:
                              type: integer
                              description: >-
                                Total discount amount applied. If no discounts
                                were applied, defaults to 0.
                          x-apifox-ignore-properties:
                            - id
                            - object
                            - amount_subtotal
                            - amount_total
                            - currency
                            - description
                            - price
                            - quantity
                            - discounts
                            - amount_discount
                    x-apifox-ignore-properties:
                      - object
                      - url
                      - has_more
                      - data
                  subscription:
                    type: string
                    description: >-
                      The ID of the subscription for Checkout Sessions in
                      subscription mode.
                    nullable: true
                  customer_creation:
                    type: string
                    description: >-
                      Configure whether a Checkout Session creates a Customer
                      when the Checkout Session completes. Can only be set in
                      payment and setup mode.
                    enum:
                      - always
                      - if_required
                    x-apifox-enum:
                      - value: always
                        name: ''
                        description: >-
                          The Checkout Session will always create a Customer
                          when a Session confirmation is attempted.
                      - value: if_required
                        name: ''
                        description: >-
                          The Checkout Session will only create a Customer if it
                          is required for Session confirmation. Currently, only
                          subscription mode Sessions require a Customer.
                  customer_details:
                    type: object
                    properties:
                      address:
                        type: object
                        properties:
                          city:
                            type: string
                            description: City, district, suburb, town, or village.
                            nullable: true
                          country:
                            type: string
                            description: Two-letter country code (ISO 3166-1 alpha-2 ).
                            nullable: true
                          line1:
                            type: string
                            description: >-
                              Address line 1 (e.g., street, PO Box, or company
                              name).
                            nullable: true
                          line2:
                            type: string
                            description: >-
                              Address line 2 (e.g., apartment, suite, unit, or
                              building).
                            nullable: true
                          postal_code:
                            type: string
                            description: ZIP or postal code.
                            nullable: true
                          state:
                            type: string
                            description: State, county, province, or region.
                            nullable: true
                        x-apifox-refs: {}
                        x-apifox-orders:
                          - city
                          - country
                          - line1
                          - line2
                          - postal_code
                          - state
                        description: >-
                          The customer’s address after a completed Checkout
                          Session.
                        x-apifox-ignore-properties: []
                      email:
                        type: string
                        description: >-
                          The email associated with the Customer, if one exists,
                          on the Checkout Session after a completed Checkout
                          Session or at time of session expiry.
                        nullable: true
                      name:
                        type: string
                        description: >-
                          The customer’s name after a completed Checkout
                          Session. 
                        nullable: true
                      phone:
                        type: string
                        description: >-
                          The customer’s phone number after a completed Checkout
                          Session.
                        nullable: true
                    x-apifox-orders:
                      - address
                      - email
                      - name
                      - phone
                    x-apifox-ignore-properties: []
                x-apifox-ignore-properties:
                  - id
                  - object
                  - amount_subtotal
                  - amount_total
                  - billing_address_collection
                  - cancel_url
                  - client_reference_id
                  - created
                  - currency
                  - customer
                  - customer_email
                  - expires_at
                  - livemode
                  - metadata
                  - mode
                  - payment_intent
                  - payment_link
                  - payment_method_options
                  - payment_method_types
                  - payment_status
                  - phone_number_collection
                  - shipping_address_collection
                  - shipping
                  - status
                  - success_url
                  - url
                  - line_items
                  - subscription
                  - customer_creation
                  - customer_details
          headers: {}
          x-apifox-name: OK
      security:
        - basic: []
      x-apifox-folder: API Reference/Checkout
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/1296482/apis/api-42654181-run
components:
  schemas:
    Product:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the object, like 'prod_xxx'.
        object:
          type: string
          description: '''product'''
        active:
          type: boolean
          description: Whether the product is currently available for purchase.
        created:
          type: integer
          description: >-
            Time at which the object was created. Measured in seconds since the
            Unix epoch.
        description:
          type: string
          description: >-
            The product’s description, meant to be displayable to the customer.
            Use this field to optionally store a long form explanation of the
            product being sold for your own rendering purposes.
        images:
          type: array
          items:
            type: string
          description: >-
            A list of up to 8 URLs of images for this product, meant to be
            displayable to the customer.
        livemode:
          type: boolean
          description: >-
            Has the value true if the object exists in live mode or the value
            false if the object exists in test mode.
        metadata:
          type: object
          properties: {}
          x-apifox-orders: []
          description: >-
            Set of key-value pairs that you can attach to an object. This can be
            useful for storing additional information about the object in a
            structured format.
          x-apifox-ignore-properties: []
        name:
          type: string
          description: >-
            The product’s name, meant to be displayable to the customer.
            Whenever this product is sold via a subscription, name will show up
            on associated invoice line item descriptions.
        updated:
          type: integer
          description: >-
            Time at which the object was last updated. Measured in seconds since
            the Unix epoch.
        url:
          type: string
          description: A URL of a publicly-accessible webpage for this product.
        default_price:
          type: 'null'
          description: （未实现）
        package_dimensions:
          type: 'null'
          description: （未实现）
        shippable:
          type: 'null'
          description: （未实现）
        statement_descriptor:
          type: 'null'
          description: （未实现）
        tax_code:
          type: 'null'
          description: （未实现）
        unit_label:
          type: 'null'
          description: （未实现）
      x-apifox-orders:
        - id
        - object
        - active
        - created
        - description
        - images
        - livemode
        - metadata
        - name
        - updated
        - url
        - default_price
        - package_dimensions
        - shippable
        - statement_descriptor
        - tax_code
        - unit_label
      required:
        - name
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Price:
      type: object
      properties:
        id: *ref_10
        object: *ref_11
        active: *ref_12
        billing_scheme:
          type: string
          description: >-
            Describes how to compute the price per period. Either per_unit or
            tiered
          enum: *ref_13
          x-apifox-enum:
            - value: per_unit
              name: ''
              description: only per_unit is supported now.
            - value: tiered
              name: ''
              description: ''
        created: *ref_14
        currency: *ref_15
        livemode: *ref_16
        lookup_key: *ref_17
        metadata:
          type: object
          properties: {}
          x-apifox-orders: *ref_18
          description: >-
            Set of key-value pairs that you can attach to an object. This can be
            useful for storing additional information about the object in a
            structured format.
          x-apifox-ignore-properties: []
        nickname: *ref_19
        product: *ref_20
        type:
          type: string
          description: >-
            One of one_time or recurring depending on whether the price is for a
            one-time purchase or a recurring (subscription) purchase.
          enum: *ref_21
          x-apifox-enum:
            - value: one_time
              name: ''
              description: only one-time is supported now.
            - value: recurring
              name: ''
              description: ''
        unit_amount: *ref_22
        custom_unit_amount:
          type: 'null'
          description: （未实现）
        recurring:
          type: object
          properties:
            interval:
              type: string
              description: >-
                The frequency at which a subscription is billed. One of day,
                week, month or year.
              enum: *ref_23
              x-apifox-enum:
                - value: day
                  name: ''
                  description: ''
                - value: week
                  name: ''
                  description: ''
                - value: month
                  name: ''
                  description: ''
                - value: year
                  name: ''
                  description: ''
            interval_count: *ref_24
            usage_type:
              type: string
              description: Configures how the quantity per period should be determined.
              enum: *ref_25
              x-apifox-enum:
                - value: licensed
                  name: ''
                  description: ''
          x-apifox-orders: *ref_26
          description: The recurring components of a price
          required:
            - interval
          x-apifox-ignore-properties: []
        tax_behavior:
          type: string
          description: （未实现）
        tiers_mode:
          type: 'null'
          description: （未实现）
        tiers:
          type: array
          items:
            type: object
            properties:
              up_to: *ref_27
              flat_amount: *ref_28
              unit_amount: *ref_29
            x-apifox-orders: *ref_30
            x-apifox-ignore-properties: []
          description: （未实现）
        transform_quantity:
          type: 'null'
          description: （未实现）
        unit_amount_decimal:
          type: string
          description: （未实现）
      x-apifox-orders:
        - id
        - object
        - active
        - billing_scheme
        - created
        - currency
        - livemode
        - lookup_key
        - metadata
        - nickname
        - product
        - type
        - unit_amount
        - custom_unit_amount
        - recurring
        - tax_behavior
        - tiers_mode
        - tiers
        - transform_quantity
        - unit_amount_decimal
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Billing Details:
      type: object
      properties:
        address: *ref_31
        email:
          type: string
          description: Email address.
        name:
          type: string
          description: 'Full name. '
        phone:
          type: string
          description: Billing phone number (including extension).
      x-apifox-orders:
        - address
        - email
        - name
        - phone
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Address:
      type: object
      properties:
        city:
          type: string
          description: City, district, suburb, town, or village.
        country:
          type: string
          description: Two-letter country code (ISO 3166-1 alpha-2 ).
        line1:
          type: string
          description: Address line 1 (e.g., street, PO Box, or company name).
        line2:
          type: string
          description: Address line 2 (e.g., apartment, suite, unit, or building).
        postal_code:
          type: string
          description: ZIP or postal code.
        state:
          type: string
          description: State, county, province, or region.
      x-apifox-orders:
        - city
        - country
        - line1
        - line2
        - postal_code
        - state
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Shipping:
      type: object
      properties:
        address: *ref_31
        carrier: &ref_33
          type: string
          description: >-
            The delivery service that shipped a physical product, such as FedEx,
            UPS, USPS, etc. 
        name: &ref_34
          type: string
          description: 'Recipient name. '
        phone: &ref_35
          type: string
          description: 'Recipient phone (including extension). '
        tracking_number: &ref_36
          type: string
          description: >-
            The tracking number for a physical product, obtained from the
            delivery service. If multiple tracking numbers were generated for
            this purchase, please separate them with commas.
      x-apifox-orders:
        - address
        - carrier
        - name
        - phone
        - tracking_number
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Payment Method Options:
      type: object
      properties:
        card:
          type: object
          properties:
            request_three_d_secure:
              type: string
              description: >-
                Values can be auto, any, void When a user selects the void
                option, Wooshpay will still perform 3DS if it encounters a
                policy.
              enum:
                - any
                - auto
                - void
              x-apifox-enum:
                - value: any
                  name: ''
                  description: Use any to request 3DS with a preference for 3ds flow
                - value: auto
                  name: ''
                  description: >-
                    (Default) Our SCA Engine automatically prompts your
                    customers for authentication based on risk level and other
                    requirements.
                - value: void
                  name: ''
                  description: Do not prefer the 3ds flow
            setup_future_usage:
              type: string
              description: >-
                Indicates that you intend to make future payments with this
                PaymentIntent’s payment method. Providing this parameter will
                attach the payment method to the PaymentIntent’s Customer, if
                present, after the PaymentIntent is confirmed and any required
                actions from the user are complete.
              enum:
                - on_session
                - off_session
                - none
              x-apifox-enum:
                - value: on_session
                  name: ''
                  description: >-
                    if you intend to only reuse the payment method when your
                    customer is present in your checkout flow.
                - value: off_session
                  name: ''
                  description: ' if your customer may or may not be present in your checkout flow.'
                - value: none
                  name: ''
                  description: >-
                    if you do not intend to reuse this payment method and want
                    to override the top-level setup_future_usage value for this
                    payment method.
            capture_method:
              type: string
              description: >-
                Controls when the funds will be captured from the customer’s
                account. If capture_method is already set on the PaymentIntent,
                providing an empty value for this parameter will unset the
                stored value for this payment method type.
            tax_id:
              type: string
          x-apifox-orders:
            - request_three_d_secure
            - setup_future_usage
            - capture_method
            - tax_id
          x-apifox-ignore-properties: []
        alipayplus:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
              enum:
                - APP
                - WAP
                - WEB
              x-apifox-enum:
                - value: APP
                  name: ''
                  description: ''
                - value: WAP
                  name: ''
                  description: ''
                - value: WEB
                  name: ''
                  description: ''
            os_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        alipay_hk:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
              enum:
                - APP
                - WAP
                - WEB
              x-apifox-enum:
                - value: APP
                  name: ''
                  description: ''
                - value: WAP
                  name: ''
                  description: ''
                - value: WEB
                  name: ''
                  description: ''
            os_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        alipay:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
              enum:
                - APP
                - WAP
                - WEB
              x-apifox-enum:
                - value: APP
                  name: ''
                  description: ''
                - value: WAP
                  name: ''
                  description: ''
                - value: WEB
                  name: ''
                  description: ''
            os_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        wechat_pay:
          type: object
          properties:
            terminal_type:
              type: string
              enum:
                - WEB
                - SCAN_CODE
                - WAP
                - OFFICIAL_ACCOUNT
              description: |-
                enum:"WEB","WAP","SCAN_CODE","OFFICIAL_ACCOUNT".
                "WEB": QR Code Payment
                "WAP": H5 Payment
                "SCAN_CODE": Quick Pay
                "OFFICIAL_ACCOUNT":Official Account Payment
              x-apifox-enum:
                - value: WEB
                  name: ''
                  description: >-
                    Users use WeChat's "Scan" feature to scan a payment code
                    generated by a merchant on a web page to make a payment.
                - value: SCAN_CODE
                  name: ''
                  description: Users present their WeChat Pay payment code to the merchant
                - value: WAP
                  name: ''
                  description: Users make purchases in merchant apps using WeChat Pay.
                - value: OFFICIAL_ACCOUNT
                  name: ''
                  description: ''
            client_ip:
              type: string
            os_type:
              type: string
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
            openid:
              type: string
              description: user's identification in the WeChat official account
          x-apifox-orders:
            - terminal_type
            - client_ip
            - os_type
            - openid
          x-apifox-ignore-properties: []
        sepa_debit:
          type: object
          properties: {}
          x-apifox-orders: []
          x-apifox-ignore-properties: []
        akulaku:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
              enum:
                - WEB
                - WAP
                - APP
                - MINI_APP
              x-apifox-enum:
                - value: WEB
                  name: ''
                  description: ''
                - value: WAP
                  name: ''
                  description: ''
                - value: APP
                  name: ''
                  description: ''
                - value: MINI_APP
                  name: ''
                  description: ''
            os_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        truemoney:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
              enum:
                - WEB
                - WAP
                - APP
                - MINI_APP
              x-apifox-enum:
                - value: WEB
                  name: ''
                  description: ''
                - value: WAP
                  name: ''
                  description: ''
                - value: APP
                  name: ''
                  description: ''
                - value: MINI_APP
                  name: ''
                  description: ''
            os_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        kakaopay:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
              enum:
                - WEB
                - WAP
                - APP
                - MINI_APP
              x-apifox-enum:
                - value: WEB
                  name: ''
                  description: ''
                - value: WAP
                  name: ''
                  description: ''
                - value: APP
                  name: ''
                  description: ''
                - value: MINI_APP
                  name: ''
                  description: ''
            os_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
              enum:
                - IOS
                - ANDROID
              x-apifox-enum:
                - value: IOS
                  name: ''
                  description: ''
                - value: ANDROID
                  name: ''
                  description: ''
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        shopeepay:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
            os_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        dana:
          type: object
          properties:
            terminal_type:
              type: string
              description: >-
                enum:"WEB","WAP","APP","MINI_APP". WEB: indicates that a PC
                browser is used.WAP: indicates that a mobile browser is
                used.APP: indicates that a mobile app is used.MINI_APP:
                indicates that a mini program is used.
            os_type:
              type: string
              description: >-
                enum:"IOS", "ANDROID". os_type is required if terminal_type is
                "APP" or "WAP"
          x-apifox-orders:
            - terminal_type
            - os_type
          x-apifox-ignore-properties: []
        pix:
          type: object
          properties:
            tax_id:
              type: string
          x-apifox-orders:
            - tax_id
          required:
            - tax_id
          x-apifox-ignore-properties: []
      x-apifox-orders:
        - card
        - alipayplus
        - alipay_hk
        - alipay
        - wechat_pay
        - sepa_debit
        - akulaku
        - truemoney
        - kakaopay
        - shopeepay
        - dana
        - pix
      description: Payment-method-specific configuration for this PaymentIntent.
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Session:
      type: object
      properties:
        id:
          type: string
          description: >-
            Unique identifier for the object, like "cs_xxx" in live environment
            and "cs_test_xxx" in test environment.
        object:
          type: string
          description: value is "checkout.session"
        amount_subtotal:
          type: integer
          description: Total of all items before discounts or taxes are applied.
        amount_total:
          type: integer
          description: Total of all items after discounts and taxes are applied.
        billing_address_collection:
          type: string
          description: >-
            Describes whether Checkout should collect the customer’s billing
            address.
          enum:
            - required
            - auto
          x-apifox-enum:
            - value: required
              name: ''
              description: ''
            - value: auto
              name: ''
              description: ''
        cancel_url:
          type: string
          description: >-
            The URL the customer will be directed to if they decide to cancel
            payment and return to your website.
        client_reference_id:
          type: string
          description: >-
            A unique string to reference the Checkout Session. This can be a
            customer ID, a cart ID, or similar, and can be used to reconcile the
            Session with your internal systems.
        created:
          type: integer
          description: >-
            Time at which the object was created. Measured in seconds since the
            Unix epoch.
        currency:
          type: string
          description: Three-letter ISO currency code
        customer:
          type: string
          description: 'The ID of the customer for this Session. '
        customer_email:
          type: string
          description: >-
            If provided, this value will be used when the Customer object is
            created. If not provided, customers will be asked to enter their
            email address. Use this parameter to prefill customer data if you
            already have an email on file. To access information about the
            customer once the payment flow is complete, use the customer
            attribute.
        expires_at:
          type: integer
          description: >-
            The timestamp at which the Checkout Session will expire. The Epoch
            time in seconds at which the Checkout Session will expire. It can be
            anywhere from 1 to 24 hours after Checkout Session creation. By
            default, this value is 24 hours from creation.
        livemode:
          type: boolean
          description: >-
            Has the value true if the object exists in live mode or the value
            false if the object exists in test mode.
        metadata:
          type: object
          properties: {}
          x-apifox-orders: []
          description: >-
            Set of key-value pairs that you can attach to an object. This can be
            useful for storing additional information about the object in a
            structured format.
          x-apifox-ignore-properties: []
        mode:
          type: string
          description: The mode of the Checkout Session. Only payment is supported now.
        payment_intent:
          type: string
          description: The ID of the PaymentIntent for Checkout Sessions in payment mode.
        payment_link:
          type: string
          description: The ID of the Payment Link that created this Session.
        payment_method_options: *ref_7
        payment_method_types:
          type: array
          items:
            type: string
          description: >-
            A list of the types of payment methods (e.g. card) this Checkout
            Session is allowed to accept.
        payment_status:
          type: string
          description: >-
            The payment status of the Checkout Session, one of paid, unpaid, or
            no_payment_required. You can use this value to decide when to
            fulfill your customer’s order.
        phone_number_collection:
          type: object
          properties:
            enabled:
              type: boolean
              description: >-
                Indicates whether phone number collection is enabled for the
                session.
          x-apifox-orders:
            - enabled
          description: >-
            Details on the state of phone number collection for the session.
            phone_number_collection.enabled boolean Indicates whether phone
            number collection is enabled for the session
          x-apifox-ignore-properties: []
        shipping_address_collection:
          type: object
          properties:
            allowed_countries:
              type: array
              items:
                type: string
              description: >-
                An array of two-letter ISO country codes representing which
                countries Checkout should provide as options for shipping
                locations. 
          description: >-
            When set, provides configuration for Checkout to collect a shipping
            address from a customer.
          x-apifox-orders:
            - allowed_countries
          x-apifox-ignore-properties: []
        shipping:
          description: Shipping information for this Checkout Session.
          type: object
          x-apifox-refs:
            01GMQHM3R25RQHHK8GY2QSZHB6: *ref_32
          x-apifox-orders:
            - 01GMQHM3R25RQHHK8GY2QSZHB6
          properties:
            address: *ref_31
            carrier: *ref_33
            name: *ref_34
            phone: *ref_35
            tracking_number: *ref_36
          x-apifox-ignore-properties:
            - address
            - carrier
            - name
            - phone
            - tracking_number
        status:
          type: string
          description: >-
            The status of the Checkout Session, one of open, complete, or
            expired. 
          enum:
            - open
            - complete
            - expired
          x-apifox-enum:
            - value: open
              name: ''
              description: >-
                The checkout session is still in progress. Payment processing
                has not started
            - value: complete
              name: ''
              description: >-
                The checkout session is complete. Payment processing may still
                be in progress.
            - value: expired
              name: ''
              description: >-
                The checkout session has expired. No further processing will
                occur.
        success_url:
          type: string
          description: >-
            The URL the customer will be directed to after the payment or
            subscription creation is successful.
        url:
          type: string
          description: >-
            The URL to the Checkout Session. Redirect customers to this URL to
            take them to Checkout. 
        line_items:
          description: >-
            The line items purchased by the customer. This field is not included
            by default. To include it in the response, expand the line_items
            field.
          type: object
          x-apifox-refs:
            01GMQGBG5GSFNYSAE9WNRWXVS4: *ref_37
          x-apifox-orders:
            - 01GMQGBG5GSFNYSAE9WNRWXVS4
          properties:
            object: &ref_39
              type: string
              default: '"list"'
            url: &ref_40
              type: string
            has_more: &ref_41
              type: boolean
            data: *ref_38
          x-apifox-ignore-properties:
            - object
            - url
            - has_more
            - data
        subscription:
          type: string
          description: >-
            The ID of the subscription for Checkout Sessions in subscription
            mode.
          nullable: true
        allow_promotion_codes:
          type: boolean
          description: Enables user redeemable promotion codes.
        recovered_from:
          type: 'null'
          description: （未实现）
        total_details:
          type: 'null'
          description: （未实现）
        automatic_tax:
          type: object
          properties:
            enabled:
              type: boolean
            status:
              type: 'null'
          x-apifox-orders:
            - enabled
            - status
          description: （未实现）
          x-apifox-ignore-properties: []
        after_expiration:
          type: 'null'
          description: （未实现）
        payment_method_collection:
          type: 'null'
          description: （未实现）
        custom_text:
          type: object
          properties:
            shipping_address:
              type: 'null'
            submit:
              type: 'null'
          x-apifox-orders:
            - shipping_address
            - submit
          description: （未实现）
          x-apifox-ignore-properties: []
        submit_type:
          type: 'null'
          description: （未实现）
        consent_collection:
          type: 'null'
          description: （未实现）
        consent:
          type: 'null'
          description: （未实现）
        locale:
          type: 'null'
          description: （未实现）
        shipping_cost:
          type: 'null'
          description: （未实现）
        setup_intent:
          type: 'null'
          description: （未实现）
        invoice_creation:
          type: 'null'
          description: （未实现）
        invoice:
          type: 'null'
          description: （未实现）
        customer_creation:
          type: string
          description: >-
            Configure whether a Checkout Session creates a Customer when the
            Checkout Session completes. Can only be set in payment and setup
            mode.
          enum:
            - always
            - if_required
          x-apifox-enum:
            - value: always
              name: ''
              description: >-
                The Checkout Session will always create a Customer when a
                Session confirmation is attempted.
            - value: if_required
              name: ''
              description: >-
                The Checkout Session will only create a Customer if it is
                required for Session confirmation. Currently, only subscription
                mode Sessions require a Customer.
        customer_details:
          type: object
          properties:
            address:
              type: object
              properties:
                city:
                  type: string
                  description: City, district, suburb, town, or village.
                  nullable: true
                country:
                  type: string
                  description: Two-letter country code (ISO 3166-1 alpha-2 ).
                  nullable: true
                line1:
                  type: string
                  description: Address line 1 (e.g., street, PO Box, or company name).
                  nullable: true
                line2:
                  type: string
                  description: Address line 2 (e.g., apartment, suite, unit, or building).
                  nullable: true
                postal_code:
                  type: string
                  description: ZIP or postal code.
                  nullable: true
                state:
                  type: string
                  description: State, county, province, or region.
                  nullable: true
              x-apifox-refs: {}
              x-apifox-orders:
                - city
                - country
                - line1
                - line2
                - postal_code
                - state
              description: The customer’s address after a completed Checkout Session.
              x-apifox-ignore-properties: []
            email:
              type: string
              description: >-
                The email associated with the Customer, if one exists, on the
                Checkout Session after a completed Checkout Session or at time
                of session expiry.
              nullable: true
            name:
              type: string
              description: 'The customer’s name after a completed Checkout Session. '
              nullable: true
            phone:
              type: string
              description: The customer’s phone number after a completed Checkout Session.
              nullable: true
            tax_exempt:
              type: string
            tax_ids:
              type: 'null'
          x-apifox-orders:
            - address
            - email
            - name
            - phone
            - tax_exempt
            - tax_ids
          x-apifox-ignore-properties: []
      x-apifox-orders:
        - id
        - object
        - amount_subtotal
        - amount_total
        - billing_address_collection
        - cancel_url
        - client_reference_id
        - created
        - currency
        - customer
        - customer_email
        - expires_at
        - livemode
        - metadata
        - mode
        - payment_intent
        - payment_link
        - payment_method_options
        - payment_method_types
        - payment_status
        - phone_number_collection
        - shipping_address_collection
        - shipping
        - status
        - success_url
        - url
        - line_items
        - subscription
        - allow_promotion_codes
        - recovered_from
        - total_details
        - automatic_tax
        - after_expiration
        - payment_method_collection
        - custom_text
        - submit_type
        - consent_collection
        - consent
        - locale
        - shipping_cost
        - setup_intent
        - invoice_creation
        - invoice
        - customer_creation
        - customer_details
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    List:
      type: object
      properties:
        object: *ref_39
        url: *ref_40
        has_more: *ref_41
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              object:
                type: string
              api_version:
                type: 'null'
              application:
                type: 'null'
              created:
                type: integer
              description:
                type: string
              enabled_events:
                type: array
                items:
                  type: string
              livemode:
                type: boolean
              metadata:
                type: object
                properties: {}
                x-apifox-orders: []
                x-apifox-ignore-properties: []
              status:
                type: string
              url:
                type: string
            x-apifox-orders:
              - id
              - object
              - api_version
              - application
              - created
              - description
              - enabled_events
              - livemode
              - metadata
              - status
              - url
            x-apifox-ignore-properties: []
      x-apifox-orders:
        - object
        - url
        - has_more
        - data
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Coupons:
      type: object
      properties:
        id: *ref_42
        amount_off: *ref_43
        currency: *ref_44
        duration:
          type: string
          description: >-
            One of forever, once, and repeating. Describes how long a customer
            who applies this coupon will get the discount.
          enum:
            - forever
            - once
            - repeating
          x-apifox-enum:
            - value: forever
              name: ''
              description: >-
                Applies to all charges from a subscription with this coupon
                applied.
            - value: once
              name: ''
              description: >-
                Applies to the first charge from a subscription with this coupon
                applied.
            - value: repeating
              name: ''
              description: >-
                Applies to charges in the first duration_in_months months from a
                subscription with this coupon applied.
        duration_in_months:
          type: integer
          description: >-
            Required only if duration is repeating, in which case it must be a
            positive integer that specifies the number of months the discount
            will be in effect.
        duration_in_weeks:
          type: string
          description: >-
            Required only if duration is repeating, in which case it must be a
            positive integer that specifies the number of weeks the discount
            will be in effect.
        duration_in_days: *ref_45
        object: *ref_46
        created: *ref_47
        livemode: *ref_48
        metadata:
          type: object
          properties: {}
          x-apifox-orders: *ref_49
          description: >-
            Set of key-value pairs that you can attach to an object. This can be
            useful for storing additional information about the object in a
            structured format.
          x-apifox-ignore-properties: []
        name: *ref_50
        percent_off: *ref_51
        max_redemptions: *ref_52
        redeem_by: *ref_53
        times_redeemed: *ref_54
        valid: *ref_55
        applies_to:
          type: object
          properties:
            products:
              type: array
              items:
                type: string
              description: A list of product IDs this coupon applies to
          description: Contains information about what this coupon applies to.
          x-apifox-orders:
            - products
          x-apifox-ignore-properties: []
        currency_options:
          type: object
          properties:
            <currency>.amount_off: *ref_56
          description: >-
            Coupons defined in each available currency option. Each key must be
            a three-letter ISO currency code and a supported currency.
          x-apifox-orders: *ref_57
          x-apifox-ignore-properties: []
      x-apifox-orders:
        - id
        - amount_off
        - currency
        - duration
        - duration_in_months
        - duration_in_weeks
        - duration_in_days
        - object
        - created
        - livemode
        - metadata
        - name
        - percent_off
        - max_redemptions
        - redeem_by
        - times_redeemed
        - valid
        - applies_to
        - currency_options
      required:
        - duration_in_weeks
        - duration_in_days
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    Discounts:
      type: object
      properties:
        id: *ref_58
        object: *ref_59
        checkout_session: *ref_60
        coupon:
          type: object
          x-apifox-refs: *ref_61
          x-apifox-orders: *ref_62
          properties:
            id: *ref_42
            amount_off: *ref_43
            currency: *ref_44
            duration_in_days: *ref_45
            object: *ref_46
            created: *ref_47
            livemode: *ref_48
            metadata:
              type: object
              properties: {}
              x-apifox-orders: *ref_49
              description: >-
                Set of key-value pairs that you can attach to an object. This
                can be useful for storing additional information about the
                object in a structured format.
              x-apifox-ignore-properties: []
            name: *ref_50
            percent_off: *ref_51
            max_redemptions: *ref_52
            redeem_by: *ref_53
            times_redeemed: *ref_54
            valid: *ref_55
            currency_options:
              type: object
              properties:
                <currency>.amount_off: *ref_56
              description: >-
                Coupons defined in each available currency option. Each key must
                be a three-letter ISO currency code and a supported currency.
              x-apifox-orders: *ref_57
              x-apifox-ignore-properties: []
          description: Hash describing the coupon applied to create this discount.
          required:
            - duration_in_days
          x-apifox-ignore-properties:
            - id
            - amount_off
            - currency
            - duration_in_days
            - object
            - created
            - livemode
            - metadata
            - name
            - percent_off
            - max_redemptions
            - redeem_by
            - times_redeemed
            - valid
            - currency_options
        customer: *ref_63
        start: *ref_64
        end: *ref_65
        promotion_code: *ref_66
        invoice:
          type: 'null'
          description: （未完成）
        invoice_item:
          type: 'null'
          description: （未完成）
        subscription: *ref_67
      x-apifox-orders:
        - id
        - object
        - checkout_session
        - coupon
        - customer
        - start
        - end
        - promotion_code
        - invoice
        - invoice_item
        - subscription
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    item:
      type: object
      properties:
        id: *ref_68
        object: *ref_69
        amount_subtotal: *ref_70
        amount_total: *ref_71
        currency: *ref_72
        description: *ref_73
        price:
          type: object
          x-apifox-refs: *ref_74
          x-apifox-orders: *ref_75
          properties:
            id: *ref_10
            object: *ref_11
            active: *ref_12
            billing_scheme:
              type: string
              description: >-
                Describes how to compute the price per period. Either per_unit
                or tiered
              enum: *ref_13
              x-apifox-enum:
                - value: per_unit
                  name: ''
                  description: only per_unit is supported now.
                - value: tiered
                  name: ''
                  description: ''
            created: *ref_14
            currency: *ref_15
            livemode: *ref_16
            lookup_key: *ref_17
            metadata:
              type: object
              properties: {}
              x-apifox-orders: *ref_18
              description: >-
                Set of key-value pairs that you can attach to an object. This
                can be useful for storing additional information about the
                object in a structured format.
              x-apifox-ignore-properties: []
            nickname: *ref_19
            product: *ref_20
            type:
              type: string
              description: >-
                One of one_time or recurring depending on whether the price is
                for a one-time purchase or a recurring (subscription) purchase.
              enum: *ref_21
              x-apifox-enum:
                - value: one_time
                  name: ''
                  description: only one-time is supported now.
                - value: recurring
                  name: ''
                  description: ''
            unit_amount: *ref_22
            recurring:
              type: object
              properties:
                interval:
                  type: string
                  description: >-
                    The frequency at which a subscription is billed. One of day,
                    week, month or year.
                  enum: *ref_23
                  x-apifox-enum:
                    - value: day
                      name: ''
                      description: ''
                    - value: week
                      name: ''
                      description: ''
                    - value: month
                      name: ''
                      description: ''
                    - value: year
                      name: ''
                      description: ''
                interval_count: *ref_24
                usage_type:
                  type: string
                  description: Configures how the quantity per period should be determined.
                  enum: *ref_25
                  x-apifox-enum:
                    - value: licensed
                      name: ''
                      description: ''
              x-apifox-orders: *ref_26
              description: The recurring components of a price
              required:
                - interval
              x-apifox-ignore-properties: []
            tiers:
              type: array
              items:
                type: object
                properties:
                  up_to: *ref_27
                  flat_amount: *ref_28
                  unit_amount: *ref_29
                x-apifox-orders: *ref_30
                x-apifox-ignore-properties: []
              description: （未实现）
          description: The price used to generate the line item.
          x-apifox-ignore-properties:
            - id
            - object
            - active
            - billing_scheme
            - created
            - currency
            - livemode
            - lookup_key
            - metadata
            - nickname
            - product
            - type
            - unit_amount
            - recurring
            - tiers
        quantity: *ref_76
        taxes:
          type: string
          description: （未实现）The taxes applied to the line item.
        discounts:
          type: array
          items:
            type: object
            x-apifox-refs: *ref_77
            x-apifox-orders: *ref_78
            properties:
              id: *ref_58
              object: *ref_59
              checkout_session: *ref_60
              coupon:
                type: object
                x-apifox-refs: *ref_61
                x-apifox-orders: *ref_62
                properties:
                  id: *ref_42
                  amount_off: *ref_43
                  currency: *ref_44
                  duration_in_days: *ref_45
                  object: *ref_46
                  created: *ref_47
                  livemode: *ref_48
                  metadata:
                    type: object
                    properties: {}
                    x-apifox-orders: *ref_49
                    description: >-
                      Set of key-value pairs that you can attach to an object.
                      This can be useful for storing additional information
                      about the object in a structured format.
                    x-apifox-ignore-properties: []
                  name: *ref_50
                  percent_off: *ref_51
                  max_redemptions: *ref_52
                  redeem_by: *ref_53
                  times_redeemed: *ref_54
                  valid: *ref_55
                  currency_options:
                    type: object
                    properties:
                      <currency>.amount_off: *ref_56
                    description: >-
                      Coupons defined in each available currency option. Each
                      key must be a three-letter ISO currency code and a
                      supported currency.
                    x-apifox-orders: *ref_57
                    x-apifox-ignore-properties: []
                description: Hash describing the coupon applied to create this discount.
                required:
                  - duration_in_days
                x-apifox-ignore-properties:
                  - id
                  - amount_off
                  - currency
                  - duration_in_days
                  - object
                  - created
                  - livemode
                  - metadata
                  - name
                  - percent_off
                  - max_redemptions
                  - redeem_by
                  - times_redeemed
                  - valid
                  - currency_options
              customer: *ref_63
              start: *ref_64
              end: *ref_65
              promotion_code: *ref_66
              subscription: *ref_67
            x-apifox-ignore-properties:
              - id
              - object
              - checkout_session
              - coupon
              - customer
              - start
              - end
              - promotion_code
              - subscription
          description: The discounts applied to the line item.
        amount_discount: *ref_79
        amount_tax:
          type: string
          description: （未实现）Total tax amount applied. If no tax was applied, defaults to 0.
      x-apifox-orders:
        - id
        - object
        - amount_subtotal
        - amount_total
        - currency
        - description
        - price
        - quantity
        - taxes
        - discounts
        - amount_discount
        - amount_tax
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    basic:
      type: http
      scheme: basic
servers:
  - url: https://apitest.wooshpay.com
    description: 官网测试
security:
  - basic: []

```
