---
agentTools:
  projectIndex: https://copperx.readme.io/llms.txt
---

# List of checkout sessions

Returns ths list of checkout sessions

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "paths": {
    "/api/v1/checkout/sessions": {
      "get": {
        "operationId": "SessionsController_findAll",
        "summary": "List of checkout sessions",
        "description": "Returns ths list of checkout sessions",
        "parameters": [
          {
            "name": "page",
            "required": false,
            "in": "query",
            "example": 1,
            "description": "Page number. Starts from 1",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "limit",
            "required": false,
            "in": "query",
            "example": 10,
            "description": "Number of items per page",
            "schema": {
              "type": "number"
            }
          },
          {
            "name": "createdAt",
            "required": false,
            "in": "query",
            "description": "Filter by created date",
            "example": {
              "gt": "2020-01-01"
            },
            "style": "deepObject",
            "explode": true,
            "schema": {
              "$ref": "#/components/schemas/DateFilterDto"
            }
          },
          {
            "name": "ids",
            "required": false,
            "in": "query",
            "example": [
              "c3611c05-df51-4b47-b601-f2eac02f4ef0",
              "c3611c05-df51-4b47-b601-f2eac02f4ef2"
            ],
            "description": "Filter by id. Returns items with given ids",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentLinkId",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by payment link id",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by subscription id",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "invoiceId",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by invoice ids",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mode",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by mode",
            "schema": {
              "$ref": "#/components/schemas/CheckoutSessionMode"
            }
          },
          {
            "name": "paymentMethodTypes",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by payment method type",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/PaymentMethodType"
              }
            }
          },
          {
            "name": "status",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by status",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentStatus",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by payment status",
            "schema": {
              "$ref": "#/components/schemas/PaymentStatus"
            }
          },
          {
            "name": "customerId",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by customer id",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "couponId",
            "required": false,
            "in": "query",
            "description": "To filter checkout sessions by applied coupon id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PageDto"
                    },
                    {
                      "properties": {
                        "data": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/CheckoutSessionSlimDto"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "tags": [
          "Checkout Sessions"
        ],
        "security": [
          {
            "bearer": []
          }
        ]
      }
    }
  },
  "info": {
    "title": "Copperx API",
    "description": "Copperx APIs allows you to access to manage payments, transactions and more in a simple way. Our APIs are easy to use and provide an intuitive APIs for developers to create powerful applications.",
    "version": "v0.0.0",
    "contact": {
      "name": "Copperx",
      "url": "https://t.me/+bVxXaalfhF8wMDFl",
      "email": "support@copperx.io"
    }
  },
  "servers": [
    {
      "url": "https://api.copperx.dev",
      "description": "Test"
    },
    {
      "url": "https://api.copperx.io",
      "description": "Production"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearer": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "type": "http"
      }
    },
    "schemas": {
      "ErrorDto": {
        "type": "object",
        "properties": {
          "message": {
            "type": "object"
          },
          "statusCode": {
            "type": "number"
          },
          "error": {
            "type": "string"
          }
        },
        "required": [
          "message",
          "statusCode",
          "error"
        ]
      },
      "PaymentMethodType": {
        "type": "string",
        "enum": [
          "superfluid",
          "wallet",
          "allowance_based_recurring",
          "stripe",
          "binance_pay"
        ]
      },
      "CryptoCurrency": {
        "type": "string",
        "enum": [
          "usdc",
          "usdt",
          "pyusd",
          "eurc",
          "brett",
          "dai",
          "btc",
          "eth",
          "matic",
          "bnb",
          "sol",
          "busd",
          "trx",
          "food",
          "bonk",
          "wif",
          "goat",
          "spx",
          "truf",
          "pengu"
        ]
      },
      "CheckoutSessionSplitWithdrawalAddressDto": {
        "type": "object",
        "properties": {
          "splitPercentage": {
            "type": "number",
            "minimum": 0,
            "maximum": 100,
            "example": 1
          },
          "address": {
            "type": "string",
            "description": "The withdrawal address for the split percentage"
          }
        },
        "required": [
          "splitPercentage",
          "address"
        ]
      },
      "PaymentSettingChainDto": {
        "type": "object",
        "properties": {
          "chainId": {
            "type": "number",
            "example": 1
          },
          "blacklistCurrencies": {
            "type": "array",
            "description": "The list of currencies to disable for the payment. Note: This field is only used for checkout session API atm.",
            "example": [
              "usdc"
            ],
            "items": {
              "$ref": "#/components/schemas/CryptoCurrency"
            }
          },
          "withdrawalAddress": {
            "type": "string",
            "description": "This is optional, default withdrawal address configured in dashboard under settings > payment methods is used. The custom withdrawal address to use for this chain instead of stored default withdrawal address."
          },
          "withdrawalAddresses": {
            "description": "The list of withdrawal addresses to split the payment. If provided, the sum of all split percentages should be 100.",
            "minItems": 2,
            "maxItems": 4,
            "example": [
              {
                "splitPercentage": 20,
                "address": "0x898bf05dfec6a2cfbfda2877ff759d62beed7fe7"
              },
              {
                "splitPercentage": 80,
                "address": "0xa7d770a5c4276a4d85caba7bea9a1fcbd3672db7"
              }
            ],
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutSessionSplitWithdrawalAddressDto"
            }
          }
        },
        "required": [
          "chainId"
        ]
      },
      "AddressDetailDto": {
        "type": "object",
        "properties": {
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "postalCode": {
            "type": "string"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "CheckoutSessionMode": {
        "type": "string",
        "enum": [
          "payment",
          "subscription"
        ]
      },
      "CustomFieldType": {
        "type": "string",
        "enum": [
          "text",
          "numeric",
          "dropdown"
        ]
      },
      "CustomFieldLabelType": {
        "type": "string",
        "enum": [
          "custom"
        ]
      },
      "CustomFieldLabelDto": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/CustomFieldLabelType"
          },
          "custom": {
            "type": "string"
          }
        },
        "required": [
          "custom"
        ]
      },
      "InputFieldDto": {
        "type": "object",
        "properties": {
          "maximumLength": {
            "type": "number",
            "example": 1
          },
          "minimumLength": {
            "type": "number",
            "example": 1
          },
          "value": {
            "type": "string"
          }
        },
        "required": [
          "value"
        ]
      },
      "DropdownFieldOptionsDto": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        },
        "required": [
          "label",
          "value"
        ]
      },
      "DropdownFieldDto": {
        "type": "object",
        "properties": {
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DropdownFieldOptionsDto"
            }
          },
          "value": {
            "type": "string"
          }
        },
        "required": [
          "value"
        ]
      },
      "CheckoutSessionCustomFieldsDto": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/CustomFieldType"
          },
          "label": {
            "$ref": "#/components/schemas/CustomFieldLabelDto"
          },
          "optional": {
            "type": "boolean",
            "default": false
          },
          "text": {
            "$ref": "#/components/schemas/InputFieldDto"
          },
          "numeric": {
            "$ref": "#/components/schemas/InputFieldDto"
          },
          "dropdown": {
            "$ref": "#/components/schemas/DropdownFieldDto"
          }
        },
        "required": [
          "key",
          "type",
          "label",
          "optional"
        ]
      },
      "CheckoutSessionCustomFieldDto": {
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutSessionCustomFieldsDto"
            }
          }
        }
      },
      "AfterCompletionLink": {
        "type": "string",
        "enum": [
          "redirect",
          "hosted_confirmation"
        ]
      },
      "SubmitType": {
        "type": "string",
        "enum": [
          "pay",
          "book",
          "donate"
        ]
      },
      "CustomerCreation": {
        "type": "string",
        "enum": [
          "if_required",
          "always"
        ]
      },
      "Interval": {
        "type": "string",
        "enum": [
          "day",
          "week",
          "month",
          "year"
        ]
      },
      "EntityVisibility": {
        "type": "string",
        "enum": [
          10,
          20
        ]
      },
      "PriceType": {
        "type": "string",
        "enum": [
          "one_time",
          "recurring",
          "streaming"
        ]
      },
      "Currency": {
        "type": "string",
        "enum": [
          "usdc",
          "usdt",
          "pyusd",
          "eurc",
          "brett",
          "dai",
          "btc",
          "eth",
          "matic",
          "bnb",
          "sol",
          "busd",
          "trx",
          "food",
          "bonk",
          "wif",
          "goat",
          "spx",
          "truf",
          "pengu",
          "usd",
          "inr"
        ]
      },
      "DiscountAmountDetailDto": {
        "type": "object",
        "properties": {
          "amount": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The amount of the discount"
          },
          "couponId": {
            "type": "string",
            "description": "The coupon id of the discount"
          }
        },
        "required": [
          "amount",
          "couponId"
        ]
      },
      "CheckoutSessionAmountDetailDto": {
        "type": "object",
        "properties": {
          "currency": {
            "description": "The currency of the payment",
            "$ref": "#/components/schemas/Currency"
          },
          "amountTotal": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The total amount of the payment after discounts and taxes"
          },
          "amountSubtotal": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The total amount of the payment before discounts and taxes"
          },
          "amountDiscount": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The total amount of the payment discount"
          },
          "amountTax": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The total amount of the payment tax"
          },
          "amountFee": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The total amount of the payment application fee"
          },
          "amountGasFee": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The total amount of the transaction gas fee. If null then we are not able to calculate gasFee"
          },
          "feePercentage": {
            "type": "number",
            "example": 1,
            "description": "The fee percentage to apply"
          },
          "applyFee": {
            "type": "boolean",
            "description": "The flag to apply fee"
          },
          "applyGasFee": {
            "type": "boolean",
            "description": "The flag to apply gas fee"
          },
          "discountAmounts": {
            "description": "The list of discount amounts",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DiscountAmountDetailDto"
            }
          }
        },
        "required": [
          "currency",
          "amountTotal",
          "amountSubtotal",
          "amountDiscount",
          "amountTax",
          "amountFee",
          "applyFee",
          "applyGasFee",
          "discountAmounts"
        ]
      },
      "CheckoutSessionPaymentSettingDto": {
        "type": "object",
        "properties": {
          "paymentMethodTypes": {
            "type": "array",
            "description": "A list of the types of payment methods",
            "example": "wallet",
            "minItems": 1,
            "maxItems": 1,
            "items": {
              "$ref": "#/components/schemas/PaymentMethodType"
            }
          },
          "allowedChains": {
            "description": "The list of chains allowed for the payment. If not provided, all chains supported by the organization are enabled.",
            "example": [
              {
                "chainId": 137
              }
            ],
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentSettingChainDto"
            }
          },
          "preferredChainId": {
            "type": "number",
            "example": 1,
            "description": "The preferred chain's id"
          },
          "allowSwap": {
            "type": "boolean",
            "description": "Whether the user can swap the payment currency",
            "default": false
          },
          "allowFiatPayment": {
            "type": "boolean",
            "description": "Whether to allow payment with fiat currency. If set to true, the payment will be made in fiat currency.\n      This is experimental field and supposed to change. Default: false"
          }
        }
      },
      "CheckoutSessionStatus": {
        "type": "string",
        "enum": [
          "open",
          "complete",
          "incomplete",
          "expired"
        ]
      },
      "PaymentStatus": {
        "type": "string",
        "enum": [
          "unpaid",
          "paid"
        ]
      },
      "FullAddressDetailDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name"
          },
          "email": {
            "type": "string",
            "description": "The email"
          },
          "phone": {
            "type": "string",
            "description": "The phone"
          },
          "organizationName": {
            "type": "string",
            "description": "The organization name"
          },
          "address": {
            "description": "The address",
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressDetailDto"
              }
            ]
          }
        }
      },
      "TaxIdDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          }
        },
        "required": [
          "id",
          "customerId"
        ]
      },
      "TaxIdsDto": {
        "type": "object",
        "properties": {
          "object": {
            "type": "string"
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TaxIdDto"
            }
          }
        }
      },
      "CheckoutSessionCustomerDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "organizationName": {
            "type": "string",
            "description": "The organization name"
          },
          "address": {
            "$ref": "#/components/schemas/AddressDetailDto"
          },
          "taxIds": {
            "$ref": "#/components/schemas/TaxIdsDto"
          }
        }
      },
      "BillingScheme": {
        "type": "string",
        "enum": [
          "per_unit"
        ]
      },
      "RecurringUsageType": {
        "type": "string",
        "enum": [
          "licensed"
        ]
      },
      "PublicProductDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "name": {
            "type": "string",
            "description": "The name of the product. Displayed on the checkout page"
          },
          "description": {
            "type": "string",
            "description": "The description of the product. Displayed on the checkout page"
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether the product is currently active"
          },
          "images": {
            "maxItems": 8,
            "description": "The url of product images. Displayed on the checkout page",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "publicImages": {
            "description": "Product images with absolute public url",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "unitLabel": {
            "type": "string",
            "description": "The label of the unit of the product. Displayed on the checkout page"
          },
          "url": {
            "type": "string",
            "description": "The url of the product"
          },
          "defaultPriceId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0",
            "description": "Product's default price id"
          },
          "metadata": {
            "type": "object",
            "description": "The metadata of the product"
          },
          "visibility": {
            "description": "The visibility of the product",
            "$ref": "#/components/schemas/EntityVisibility"
          }
        },
        "required": [
          "id",
          "name"
        ]
      },
      "PublicPriceDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "billingScheme": {
            "description": "The billing scheme to use for this price",
            "$ref": "#/components/schemas/BillingScheme"
          },
          "currency": {
            "description": "The currency symbol",
            "$ref": "#/components/schemas/CryptoCurrency"
          },
          "productId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0",
            "description": "Product's id"
          },
          "interval": {
            "description": "The interval at which to bill for this price. Only required for subscriptions",
            "$ref": "#/components/schemas/Interval"
          },
          "intervalCount": {
            "type": "number",
            "example": 1,
            "description": "It is used to determine the frequency at which the subscription is billed. Only required for subscriptions"
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether the price is currently active"
          },
          "usageType": {
            "description": "The usage type of the price.",
            "$ref": "#/components/schemas/RecurringUsageType"
          },
          "type": {
            "description": "The type of the price",
            "$ref": "#/components/schemas/PriceType"
          },
          "unitAmount": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The unit amount in 8 decimals, represented as a whole integer. If not provided, the unit amount will be calculated from unit_amount_decimal."
          },
          "unitAmountDecimal": {
            "type": "string"
          },
          "customUnitMax": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The maximum amount that can be billed per unit for this price. Only if unit amount is not provided"
          },
          "customUnitMin": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The minimum amount that can be billed per unit for this price. Only if unit amount is not provided"
          },
          "customPreset": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "The default amount to fill in the amount field for this price on checkout. Only if unit amount is not provided"
          },
          "customUnitAmountSuggestions": {
            "description": "Amount suggestions for this price. Only if unit amount is not provided",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "product": {
            "description": "The product this price belongs to",
            "allOf": [
              {
                "$ref": "#/components/schemas/PublicProductDto"
              }
            ]
          },
          "metadata": {
            "type": "object",
            "description": "A set of key-value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format."
          },
          "visibility": {
            "description": "The visibility of the price. If dashboard, the price is visible in the dashboard",
            "$ref": "#/components/schemas/EntityVisibility"
          }
        },
        "required": [
          "id",
          "currency",
          "productId",
          "type",
          "product"
        ]
      },
      "TaxRateType": {
        "type": "string",
        "enum": [
          "exclusive",
          "inclusive"
        ]
      },
      "LineTaxRateDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "description": "The name of the tax rate."
          },
          "description": {
            "type": "string",
            "description": "The description of the tax rate."
          },
          "country": {
            "type": "string",
            "description": "The country of the tax rate."
          },
          "percentage": {
            "type": "number",
            "minimum": 0,
            "maximum": 100,
            "example": 1,
            "description": "Percent that will be added to subtotal as a tax."
          },
          "type": {
            "description": "The type of the tax rate.",
            "$ref": "#/components/schemas/TaxRateType"
          },
          "isDefault": {
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "name",
          "percentage",
          "type",
          "isDefault"
        ]
      },
      "CheckoutSessionPriceItemDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "quantity": {
            "type": "number",
            "example": 1
          },
          "price": {
            "$ref": "#/components/schemas/PublicPriceDto"
          },
          "taxRates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LineTaxRateDto"
            }
          },
          "amountTotal": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807"
          },
          "amountSubtotal": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807"
          },
          "amountTax": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          }
        },
        "required": [
          "price"
        ]
      },
      "CheckoutSessionPriceItemsDto": {
        "type": "object",
        "properties": {
          "object": {
            "type": "string"
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckoutSessionPriceItemDto"
            }
          }
        }
      },
      "SuperTokenDto": {
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "description": "SuperToken's address"
          },
          "decimals": {
            "type": "number",
            "example": 1
          },
          "symbol": {
            "type": "string",
            "description": "SuperToken's symbol"
          }
        },
        "required": [
          "address",
          "decimals",
          "symbol"
        ]
      },
      "PaymentIntentStatus": {
        "type": "string",
        "enum": [
          "requires_payment_method",
          "requires_confirmation",
          "requires_action",
          "processing",
          "requires_capture",
          "canceled",
          "succeeded"
        ]
      },
      "AssetDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Asset id"
          },
          "name": {
            "type": "string",
            "description": "Asset name"
          },
          "chainId": {
            "type": "number",
            "example": 1,
            "description": "Asset chain id"
          },
          "address": {
            "type": "string",
            "description": "Asset address on chain"
          },
          "currency": {
            "description": "Asset currency symbol",
            "$ref": "#/components/schemas/Currency"
          },
          "symbol": {
            "type": "string",
            "description": "Asset symbol"
          },
          "decimals": {
            "type": "number",
            "example": 1,
            "description": "Asset decimals in which it is represented on chain"
          },
          "coingeckoId": {
            "type": "string",
            "description": "Asset coingecko id"
          },
          "superToken": {
            "description": "SuperToken data",
            "allOf": [
              {
                "$ref": "#/components/schemas/SuperTokenDto"
              }
            ]
          },
          "isEIP5827Supported": {
            "type": "boolean",
            "description": "Is EIP5827 supported"
          }
        },
        "required": [
          "id",
          "name",
          "chainId",
          "address",
          "currency",
          "symbol",
          "decimals",
          "isEIP5827Supported"
        ]
      },
      "PaymentMethodDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "assetId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          },
          "asset": {
            "$ref": "#/components/schemas/AssetDto"
          },
          "type": {
            "$ref": "#/components/schemas/PaymentMethodType"
          },
          "accountAddress": {
            "type": "string"
          },
          "billingDetails": {
            "$ref": "#/components/schemas/FullAddressDetailDto"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          },
          "options": {
            "type": "object"
          }
        },
        "required": [
          "id",
          "assetId",
          "asset",
          "type"
        ]
      },
      "PaymentReceiptDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "organizationId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          },
          "paymentIntentId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          },
          "name": {
            "type": "string"
          },
          "receiptNumber": {
            "type": "string"
          },
          "uri": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "organizationId",
          "paymentIntentId",
          "receiptNumber"
        ]
      },
      "StripeDataDto": {
        "type": "object",
        "properties": {
          "paymentIntentId": {
            "type": "string"
          },
          "receiptUrl": {
            "type": "string"
          },
          "cardLast4": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          }
        }
      },
      "DateFilterDto": {
        "type": "object",
        "properties": {
          "isnull": {
            "type": "boolean",
            "description": "Returns null values"
          },
          "notnull": {
            "type": "boolean",
            "description": "Returns not null values"
          },
          "gt": {
            "format": "date-time",
            "type": "string",
            "description": "Returns values greater than the given date"
          },
          "gte": {
            "format": "date-time",
            "type": "string",
            "description": "Returns values greater than or equal to the given date"
          },
          "lt": {
            "format": "date-time",
            "type": "string",
            "description": "Returns values less than the given date"
          },
          "lte": {
            "format": "date-time",
            "type": "string",
            "description": "Returns values less than or equal to the given date"
          }
        }
      },
      "PaginationFilterDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number",
            "minimum": 1,
            "example": 1,
            "default": 1,
            "description": "Page number. Starts from 1"
          },
          "limit": {
            "type": "number",
            "minimum": 1,
            "maximum": 200,
            "example": 10,
            "default": 200,
            "description": "Number of items per page"
          },
          "createdAt": {
            "description": "Filter by created date",
            "example": {
              "gt": "2020-01-01"
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/DateFilterDto"
              }
            ]
          }
        }
      },
      "PageDto": {
        "type": "object",
        "properties": {
          "page": {
            "type": "number",
            "example": 1,
            "default": 1,
            "description": "Page number. Starts from 1"
          },
          "limit": {
            "type": "number",
            "example": 10,
            "default": 200,
            "description": "Number of items per page"
          },
          "count": {
            "type": "number",
            "example": 1
          },
          "hasMore": {
            "type": "boolean"
          },
          "query": {
            "$ref": "#/components/schemas/PaginationFilterDto"
          },
          "data": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "page",
          "limit",
          "count",
          "hasMore",
          "data"
        ]
      },
      "PaymentIntentSlimDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "organizationId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          },
          "amount": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807"
          },
          "amountReceived": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "status": {
            "$ref": "#/components/schemas/PaymentIntentStatus"
          },
          "paymentMethodId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0"
          },
          "description": {
            "type": "string"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/PaymentMethodDto"
          },
          "paymentMethodTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentMethodType"
            }
          },
          "transferAccountAddress": {
            "type": "string"
          },
          "paymentReceipt": {
            "$ref": "#/components/schemas/PaymentReceiptDto"
          },
          "canceledAt": {
            "format": "date-time",
            "type": "string"
          },
          "cancellationReason": {
            "type": "string"
          },
          "stripe": {
            "$ref": "#/components/schemas/StripeDataDto"
          },
          "isMarkRefunded": {
            "type": "boolean",
            "nullable": true
          },
          "markRefundedAt": {
            "format": "date-time",
            "type": "string",
            "nullable": true
          },
          "markRefundedComment": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "id",
          "organizationId",
          "status",
          "paymentMethodId"
        ]
      },
      "CheckoutSessionSlimDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "createdAt": {
            "format": "date-time",
            "type": "string"
          },
          "updatedAt": {
            "format": "date-time",
            "type": "string"
          },
          "organizationId": {
            "type": "string",
            "description": "Organization id of the checkout session"
          },
          "mode": {
            "description": "The mode of the Checkout Session.",
            "example": "payment",
            "$ref": "#/components/schemas/CheckoutSessionMode"
          },
          "paymentLinkId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0",
            "description": "The payment link id used to create this checkout session"
          },
          "subscriptionId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0",
            "description": "The subscription created from this checkout session"
          },
          "invoiceId": {
            "type": "string",
            "format": "uuid",
            "example": "c3611c05-df51-4b47-b601-f2eac02f4ef0",
            "description": "The invoice created from this checkout session"
          },
          "amountTotal": {
            "format": "int64",
            "type": "integer",
            "example": 100000000,
            "description": "A non-zero amount filled in with 8 decimal places. For example, 1 USDC is 100000000.",
            "minimum": 0
          },
          "amountSubtotal": {
            "format": "int64",
            "type": "integer",
            "example": 100000000,
            "description": "Amount subtotal is total of all line items excluding tax, shipping, application fee and discount. A non-zero amount filled in with 8 decimal places. For example, 1 USDC is 100000000.",
            "minimum": 0
          },
          "amountGasFee": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "Amount fee is extra amount on top of amountSubtotal. If charged from end user."
          },
          "amountFee": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807",
            "description": "Amount fee is extra amount on top of amountSubtotal. If charged from end user."
          },
          "amountNet": {
            "format": "int64",
            "type": "integer",
            "example": "9223372036854775807"
          },
          "amountDetails": {
            "description": "The amount details of the payment",
            "allOf": [
              {
                "$ref": "#/components/schemas/CheckoutSessionAmountDetailDto"
              }
            ]
          },
          "currency": {
            "description": "Currency of the amount",
            "example": "usdc",
            "$ref": "#/components/schemas/CryptoCurrency"
          },
          "paymentMethodTypes": {
            "type": "array",
            "description": "A list of the types of payment methods (e.g. wallet) this Checkout Session is allowed to accept.",
            "example": "wallet",
            "minItems": 1,
            "maxItems": 1,
            "items": {
              "$ref": "#/components/schemas/PaymentMethodType"
            }
          },
          "paymentSetting": {
            "description": "The payment method settings to use for this checkout's payment",
            "allOf": [
              {
                "$ref": "#/components/schemas/CheckoutSessionPaymentSettingDto"
              }
            ]
          },
          "status": {
            "description": "The status of the session",
            "$ref": "#/components/schemas/CheckoutSessionStatus"
          },
          "paymentStatus": {
            "description": "The status of the payment",
            "$ref": "#/components/schemas/PaymentStatus"
          },
          "expiresAt": {
            "format": "date-time",
            "type": "string",
            "description": "The time at which the session will expire. Default: 1 Hour"
          },
          "customerId": {
            "type": "string",
            "description": "The ID of the customer if you want to associate the session with a customer"
          },
          "customerDetails": {
            "description": "The checkout sessions's customer detail",
            "allOf": [
              {
                "$ref": "#/components/schemas/CheckoutSessionCustomerDto"
              }
            ]
          },
          "clientReferenceId": {
            "type": "string",
            "description": "Unique ID string used to identify the session in your backend. This can be your payment ID, cart ID, or similar used to link this Checkout Session with your internal system."
          },
          "customerCreation": {
            "description": "Whether to create a customer for the session. If required, a customer will be created for subsequent payments",
            "$ref": "#/components/schemas/CustomerCreation"
          },
          "url": {
            "type": "string",
            "description": "The URL to redirect the customer to complete payment"
          },
          "successUrl": {
            "type": "string",
            "description": "The URL to redirect the customer to after payment is completed. Only applicable when `afterCompletion` is set to `redirect`"
          },
          "cancelUrl": {
            "type": "string",
            "description": "The URL to redirect the customer to if they decide to cancel payment"
          },
          "submitType": {
            "default": "pay",
            "description": "The type of submit button to display on the Checkout page",
            "$ref": "#/components/schemas/SubmitType"
          },
          "metadata": {
            "type": "object",
            "description": "A set of key-value pairs that you can attach to a Checkout Session object"
          },
          "nameCollection": {
            "type": "boolean",
            "description": "Whether to collect the customer's name. Default: false"
          },
          "emailCollection": {
            "type": "boolean",
            "description": "Whether to collect the customer's email address. Default: false"
          },
          "phoneNumberCollection": {
            "type": "boolean",
            "description": "Whether to collect the customer's phone number Default: false"
          },
          "shippingAddressCollection": {
            "type": "boolean",
            "description": "Whether to collect the customer's shipping address. Default: false"
          },
          "billingAddressCollection": {
            "type": "boolean",
            "description": "Whether to collect the customer's billing address. Default: false"
          },
          "customFields": {
            "$ref": "#/components/schemas/CheckoutSessionCustomFieldDto"
          },
          "afterCompletion": {
            "description": "The action to take after the payment is completed. You can choose to redirect user to your application or use the default payment confirmation page provided by Copperx",
            "$ref": "#/components/schemas/AfterCompletionLink"
          },
          "afterCompletionConfirmMsg": {
            "type": "string",
            "description": "The message to show after successful payment. Only applicable when `afterCompletion` is set to `hosted_confirmation`"
          },
          "shippingDetails": {
            "description": "The shipping address to use for this checkout",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullAddressDetailDto"
              }
            ]
          },
          "billingDetails": {
            "description": "The billing address to use for this checkout",
            "allOf": [
              {
                "$ref": "#/components/schemas/FullAddressDetailDto"
              }
            ]
          },
          "lineItems": {
            "description": "The list of line items to display on the session",
            "allOf": [
              {
                "$ref": "#/components/schemas/CheckoutSessionPriceItemsDto"
              }
            ]
          },
          "isMarkRefunded": {
            "type": "boolean",
            "description": "Whether to mark the payment as refunded"
          },
          "allowPromotionCodes": {
            "type": "boolean",
            "description": "Enables user redeemable promotion codes."
          },
          "defaultPromotionCode": {
            "type": "string",
            "description": "The default promotion code to apply to the session"
          },
          "isManualPayment": {
            "type": "boolean"
          },
          "paymentIntent": {
            "description": "The payment intent associated with the session. Payment intent is created when the session is created.",
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentIntentSlimDto"
              }
            ]
          }
        },
        "required": [
          "id",
          "organizationId",
          "amountTotal",
          "amountSubtotal",
          "currency",
          "status",
          "paymentStatus",
          "url",
          "lineItems",
          "isManualPayment",
          "paymentIntent"
        ]
      }
    }
  },
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "_id": {
    "buffer": {
      "0": 99,
      "1": 181,
      "2": 177,
      "3": 27,
      "4": 23,
      "5": 171,
      "6": 139,
      "7": 0,
      "8": 127,
      "9": 93,
      "10": 212,
      "11": 76
    }
  }
}
```