{
  "openapi": "3.1.0",
  "info": {
    "title": "April API",
    "version": "3.0"
  },
  "tags": [
    {
      "name": "Authentication",
      "description": "These endpoints provide various methods for authenticating users from a backend service.\n\n * **POST** [/auth/signin](/openapi/april-public/authentication/signincustomer/) \nSign-in from a backend service on behalf of a consumer customer (B2C) or customer delegate (B2B)\n* **GET** [/auth/servicetokens/{serviceTokenId}](/openapi/april-public/authentication/getservicetoken/) Return details of a service token\n* **GET** [/auth/servicetokens](/openapi/april-public/authentication/queryservicetokens/) Return a paginated list of service tokens\n* **POST** [/auth/servicetokens](/openapi/april-public/authentication/createservicetoken/) Create a new service token\n* **PATCH** [/auth/servicetokens/{serviceTokenId}](/openapi/april-public/authentication/updateservicetoken/) Various actions for updating a service token\n"
    },
    {
      "name": "Customers",
      "description": "A person or business purchasing goods or services from a merchant using Spenda to facilitate the payment.\n Customers are defined at the merchant level, so if an individual makes payments with multiple merchants,\n they will have a customer record for each of these merchants.\n\n Spenda supports two broad categories of customers:\n\n **Consumer customers** are individuals typically making purchases from the merchant via e-commerce websites.\n They are uniquely identified by `emailAddress` for a given merchant.\n\n **Organisation customers** represent businesses wishing to make purchases from the merchant.\n They are uniquely identified by `referenceCustomerId` for a given merchant.\n\n * **GET** [/customers](/openapi/april-public/customers/querycustomers/) Return a paginated list of matching customers\n* **POST** [/customers](/openapi/april-public/customers/upsertcustomer/) \nCreate a new customer or update the details of an existing customer\n* **GET** [/customers/{customerId}](/openapi/april-public/customers/getcustomer/) Return details of a customer\n* **POST** [/customers/kyc](/openapi/april-public/customers/kyccustomer/) Perform a Know Your Customer (KYC) check on a consumer customer\n* **GET** [/customers/delegates](/openapi/april-public/customers/querycustomerdelegates/) Return a paginated list of matching customer delegates\n* **GET** [/customers/delegates/{customerDelegateId}](/openapi/april-public/customers/getcustomerdelegate/) Return details of a customer delegate\n* **PATCH** [/customers/delegates/{customerDelegateId}](/openapi/april-public/customers/updatecustomerdelegate/) Various actions for updating a customer delegate such as linking to a new customer\n* **POST** [/customers/delegates](/openapi/april-public/customers/upsertcustomerdelegate/) Upsert customer delegate\n"
    },
    {
      "name": "Merchants",
      "description": "A business or individual that uses Spenda to facilitate payments for their customers.\n\n * **GET** [/merchants](/openapi/april-public/merchants/querymerchants/) Return a paginated list of matching merchants\n* **POST** [/merchants](/openapi/april-public/merchants/createmerchant/) Create a new sub-merchant within the context of a marketplace\n* **GET** [/merchants/{merchantId}](/openapi/april-public/merchants/getmerchant/) Return details of a merchant\n* **PATCH** [/merchants/{merchantId}](/openapi/april-public/merchants/updatemerchant/) Various actions for updating a merchant such as updating the bank account used for payouts\n* **GET** [/merchants/{merchantId}/balances](/openapi/april-public/merchants/querybalances/) Query the account balances of a merchant\n* **POST** [/merchants/{merchantId}/files](/openapi/april-public/merchants/uploadmerchantfile/) Upload a document scan as part of the merchant onboarding profile\n* **GET** [/merchants/{merchantId}/files/{fileId}](/openapi/april-public/merchants/getmerchantfile/) Get details on a merchant onboarding file\n* **GET** [/merchants/{merchantId}/applepay](/openapi/april-public/merchants/getmerchantapplepaydomains/) Get the domains registered for ApplePay for the specified merchant\n* **GET** [/merchants/{merchantId}/owners](/openapi/april-public/merchants/listbeneficialowners/) Return details of all beneficial owners for the given merchant\n* **POST** [/merchants/{merchantId}/owners](/openapi/april-public/merchants/createbeneficialowner/) Create a beneficial owner for the given merchant\n* **GET** [/merchants/{merchantId}/owners/{ownerId}](/openapi/april-public/merchants/getbeneficialowner/) Return details of a beneficial owner\n* **PUT** [/merchants/{merchantId}/owners/{ownerId}](/openapi/april-public/merchants/replacebeneficialowner/) Overwrite an existing beneficial owner\n* **DELETE** [/merchants/{merchantId}/owners/{ownerId}](/openapi/april-public/merchants/deletebeneficialowner/) Delete a beneficial owner\n* **GET** [/merchants/industries](/openapi/april-public/merchants/getindustries/) List all industries we currently support\n"
    },
    {
      "name": "Payment sources",
      "description": "A payment source represents a reusable source of funds to use for payments.\n\n * **GET** [/sources/{sourceId}](/openapi/april-public/payment sources/getpaymentsource/) \n* **DELETE** [/sources/{sourceId}](/openapi/april-public/payment sources/deletepaymentsource/) \n* **POST** [/sources](/openapi/april-public/payment sources/createpaymentsource/) Register a payment source that may be used to pay for one or more payments\n* **GET** [/sources](/openapi/april-public/payment sources/querypaymentsources/) Return a paginated list of matching payment sources\n* **GET** [/sources/blockedcards](/openapi/april-public/payment sources/queryblockedcardevents/) Return a paginated list of events related to cards that have been blocked\n* **PATCH** [/sources/blockedcards/{cardBlockId}](/openapi/april-public/payment sources/updateblockedcard/) Update actions on blocked cards\n"
    },
    {
      "name": "Payment tokens",
      "description": "A payment token represents a single use reference to a source of funds that can be used to pay for an order.\n\n * **POST** [/tokens](/openapi/april-public/payment tokens/createpaymenttoken/) \nGenerate a pay-in-full payment token based on the provided payment source\n* **GET** [/tokens/{paymentTokenId}](/openapi/april-public/payment tokens/querypaymenttoken/) Get the details for a pay-in-full payment token\n* **POST** [/tokens/{merchantId}/surchargequote](/openapi/april-public/payment tokens/calculatesurcharge/) Calculates the surcharged amounts for the specified payment type\n"
    },
    {
      "name": "Pay plans",
      "description": "A pay plan represents a payment where the Spenda platform has extended a loan to make a purchase that\nthe customer pays back over one or more instalments.\n\n * **POST** [/payplans/offer](/openapi/april-public/pay plans/createpayplanoffer/) Create a pay plan offer for a registered and KYC'd merchant customer\n* **GET** [/payplans](/openapi/april-public/pay plans/querypayplans/) Return a paginated list of matching pay plans\n* **POST** [/payplans](/openapi/april-public/pay plans/createpayplan/) Create a pay plan and payment token from a successful pay plan offer\n* **GET** [/payplans/{payPlanId}](/openapi/april-public/pay plans/getpayplan/) Return details of a pay plan\n* **POST** [/payplans/max](/openapi/april-public/pay plans/calculatepayplanmaxloan/) Return the maximum loan amount the given customer is currently eligible for\n* **POST** [/payplans/parameters](/openapi/april-public/pay plans/calculatepayplanparameters/) Calculate the pay plan parameters for the given amount and list of variants\n"
    },
    {
      "name": "Orders",
      "description": "An order captures the details of the goods or services that the customer is\npurchasing from the merchant.\n\n * **GET** [/orders](/openapi/april-public/orders/queryorders/) Return a paginated list of matching orders\n* **POST** [/orders](/openapi/april-public/orders/createorder/) Creates a new order\n* **POST** [/orders/{orderId}/pay](/openapi/april-public/orders/payorder/) \nPay for an order using a payment token\n* **GET** [/orders/{orderId}](/openapi/april-public/orders/getorder/) Retrieves an order\n* **DELETE** [/orders/{orderId}](/openapi/april-public/orders/cancelorder/) Cancels an order, invalidating it from being payable\n* **PATCH** [/orders/{orderId}](/openapi/april-public/orders/updateorder/) Actions for modifying an existing order\n"
    },
    {
      "name": "Simulation",
      "description": "Sandbox only endpoints for simulating external events such as a bank transfer.\n\n * **POST** [/simulation](/openapi/april-public/simulation/simulation/) Sandbox only endpoint to simulate external events such as a bank transfer being performed\n"
    },
    {
      "name": "Transactions",
      "description": "A transaction is a payment from the perspective of a merchant.\nThe transaction shows how much the merchant will be paid, if they have been paid already\nand whether there have been any refunds.\n\n * **GET** [/transactions/{transactionId}](/openapi/april-public/transactions/gettransaction/) Return details of a transaction\n* **GET** [/transactions](/openapi/april-public/transactions/querytransactions/) Return a paginated list of matching transactions\n* **PATCH** [/transactions/{transactionId}](/openapi/april-public/transactions/updatetransaction/) Various actions for updating a transaction such as issuing a refund\n* **POST** [/transactions/payouts](/openapi/april-public/transactions/createmanualpayout/) \nRequest to create a manual payout for a merchant\n* **GET** [/transactions/payouts](/openapi/april-public/transactions/querypayoutsummaries/) Return a paginated list of matching payout summaries\n* **GET** [/transactions/payouts/{payoutId}](/openapi/april-public/transactions/getpayoutdetails/) Return an aggregated breakdown of the money movements included in the payout along with details of the disbursement itself\n* **GET** [/transactions/invoices](/openapi/april-public/transactions/querymerchantinvoices/) Return a paginated list of matching merchant invoices\n* **GET** [/transactions/invoices/{invoiceId}](/openapi/april-public/transactions/getmerchantinvoicedetails/) Return an aggregated breakdown of the money movements included in the invoice along with billing details\n* **GET** [/transactions/invoices/{invoiceId}/pdf](/openapi/april-public/transactions/getmerchantinvoicepdf/) Return a PDF of the merchant invoice intended to be sent to the payer merchant\n* **GET** [/transactions/settlement](/openapi/april-public/transactions/querysettlemententries/) \nReturn a paginated list of all settlement entries matching the given search criteria\n* **GET** [/transactions/settlement/report](/openapi/april-public/transactions/reportsettlemententries/) \nReturn a list of all settlement entries matching the given search criteria\n* **GET** [/transactions/disputes](/openapi/april-public/transactions/querydisputes/) \nReturn a paginated list of all disputes matching the given search criteria\n* **GET** [/transactions/refunds](/openapi/april-public/transactions/queryrefunds/) Return a paginated list of matching refunds\n"
    },
    {
      "name": "Marketplaces",
      "description": "A B2B2C setup where an entity with business customers (sub-merchants) uses Spenda to facilitate payments for their customers' customers.\n\n * **GET** [/marketplaces/{marketplaceId}](/openapi/april-public/marketplaces/getmarketplace/) Return details of a marketplace\n* **POST** [/marketplaces/customer](/openapi/april-public/marketplaces/upsertmarketplacecustomer/) \nMarketplace customers allow marketplaces to onboard their customers once and have them available over all their sub-merchants\n",
      "externalDocs": {
        "url": "/developer-portal/marketplace/",
        "description": "Marketplace Integration"
      }
    },
    {
      "name": "Webhooks",
      "description": "Webhooks are a mechanism where merchants and marketplaces can register an endpoints against one or more\nevents. When these events occur, a POST HTTP request is made to the registered endpoint with the event details.\n\n * **GET** [/webhooks](/openapi/april-public/webhooks/querywebhooksubscriptions/) Return a paginated list of matching webhook subscriptions\n* **POST** [/webhooks](/openapi/april-public/webhooks/createwebhooksubscription/) \nCreate a new webhook subscription\n* **GET** [/webhooks/{id}](/openapi/april-public/webhooks/getwebhooksubscription/) Return details of a webhook subscription\n* **PATCH** [/webhooks/{id}](/openapi/april-public/webhooks/updatewebhooksubscription/) Update an existing webhook subscription\n"
    },
    {
      "name": "Loans",
      "description": "Loans are payment products where credit is extended by a loan facility to a borrower. The borrower can be\neither an individual or a business depending on the loan product in question.\n\n * **GET** [/loans](/openapi/april-public/loans/queryloansummaries/) Return a paginated list of matching loan summaries\n* **GET** [/loans/statements/{loanStatementId}](/openapi/april-public/loans/getloanstatementsummary/) Return a loan statement summary\n* **GET** [/loans/statements](/openapi/april-public/loans/queryloanstatementsummaries/) Return a paginated list of matching loan statement summaries\n* **GET** [/loans/statements/entries](/openapi/april-public/loans/queryloanstatemententries/) \nReturn a paginated list of matching loan statement entries\n* **GET** [/loans/enterprise/statements/{loanStatementId}/download](/openapi/april-public/loans/downloadloanstatement/) Return a loan statement report in either CSV, PDF or XML format\n* **GET** [/loans/statements/entries/report](/openapi/april-public/loans/reportloanstatemententries/) \nReturn a list of all loan statement entries matching the given search criteria\n"
    },
    {
      "name": "Card issuer",
      "description": "Endpoints related to the issuing of digital cards, typically associated with a trade account based loan.\n\n * **POST** [/issuer/card](/openapi/april-public/card issuer/administerdigitalcard/) Administer digital card(s)\n* **GET** [/issuer/card](/openapi/april-public/card issuer/querydigitalcards/) Return a paginated list of matching digital card summaries\n"
    }
  ],
  "servers": [
    {
      "url": "https://api.sandbox.au.meetapril.io",
      "description": "Sandbox"
    },
    {
      "url": "https://api.au.meetapril.io",
      "description": "Production"
    }
  ],
  "paths": {
    "/auth/signin": {
      "post": {
        "tags": [
          "Authentication"
        ],
        "summary": "Sign In Customer",
        "description": "\nSign-in from a backend service on behalf of a consumer customer (B2C) or customer delegate (B2B).\nUsed by custom integrations and e-commerce plugins as a form of single-sign-on for the checkout.\nIf the customer has been authenticated with the merchant's website, this lets them also authenticate\na known customer with April. This is a pre-requisite for using the checkout for a B2B customer.\n\nFor both B2B and B2C customers having an authenticated session with the checkout also unlocks access\nto saved cards as a payment source.\n\nNote merchants need to have been registered as supporting B2B customer when onboarded to be able to\nsupport B2B customers in the checkout.\n",
        "operationId": "SignInCustomer",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SignInOnBehalfOfCustomerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerAuthenticationResult"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Pay By Link Token": []
          }
        ]
      }
    },
    "/auth/servicetokens/{serviceTokenId}": {
      "get": {
        "tags": [
          "Authentication"
        ],
        "summary": "Get Service Token",
        "description": "Return details of a service token.",
        "operationId": "GetServiceToken",
        "parameters": [
          {
            "name": "serviceTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Authentication"
        ],
        "summary": "Update Service Token",
        "description": "Various actions for updating a service token.",
        "operationId": "UpdateServiceToken",
        "parameters": [
          {
            "name": "serviceTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateServiceTokenRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/auth/servicetokens": {
      "get": {
        "tags": [
          "Authentication"
        ],
        "summary": "Query Service Tokens",
        "description": "Return a paginated list of service tokens.",
        "operationId": "QueryServiceTokens",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Find merchant secret tokens for the given merchant identifier. At least one of merchantId or marketplaceId must be provided.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "marketplaceId",
            "in": "query",
            "description": "Find marketplace API keys for the given marketplace identifier. At least one of merchantId or marketplaceId must be provided.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by status",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Status"
              }
            }
          },
          {
            "name": "expired",
            "in": "query",
            "description": "Filter by whether the token is expired or not. True to return only expired tokens, false to return only unexpired tokens.",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "createdFromInclusive",
            "in": "query",
            "description": "Return service tokens that was created at or after this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdToExclusive",
            "in": "query",
            "description": "Return service tokens that were created before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "expiresAtFromInclusive",
            "in": "query",
            "description": "Return service tokens that is expire on or after this timestamp in ISO-8601 format.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "expiresAtToExclusive",
            "in": "query",
            "description": "Return service tokens that is expire on or before this timestamp in ISO-8601 format.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ServiceTokenResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Authentication"
        ],
        "summary": "Create Service Token",
        "description": "Create a new service token.",
        "operationId": "CreateServiceToken",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateServiceTokenRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/customers": {
      "get": {
        "tags": [
          "Customers"
        ],
        "summary": "Query Customers",
        "description": "Return a paginated list of matching customers.",
        "operationId": "QueryCustomers",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return customers that were created at or after this timestamp",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return customers that were created at or before this timestamp",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "emailAddress",
            "in": "query",
            "description": "Filter by email address",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter by first name, last name or organisation name",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MerchantCustomerResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Upsert Customer",
        "description": "\nCreate a new customer or update the details of an existing customer.\nFor consumer customers, the email address and merchant identifier constitute the business key.\nFor organisation customers, the customer reference id and the merchant identifier constitute the business key.\nIf a record with the same business key already exists, then it is updated with the provided details, otherwise\na new customer is added.\n",
        "operationId": "UpsertCustomer",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertMerchantCustomerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpsertCustomerResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token": []
          }
        ]
      }
    },
    "/customers/{customerId}": {
      "get": {
        "tags": [
          "Customers"
        ],
        "summary": "Get Customer",
        "description": "Return details of a customer.",
        "operationId": "GetCustomer",
        "parameters": [
          {
            "name": "customerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantCustomerResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT | Customer JWT": []
          }
        ]
      }
    },
    "/customers/kyc": {
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Kyc Customer",
        "description": "Perform a Know Your Customer (KYC) check on a consumer customer. The response may indicate that more details are required in which case subsequent calls with the additional details can be made. See [Know Your Customer](/developer-portal/know-your-customer-b2c/) for more details. \n\n**Alpha release** - Consider this endpoint experimental and very likely to change in future.",
        "operationId": "KycCustomer",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerKycRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KycAttemptResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Customer JWT": []
          }
        ]
      }
    },
    "/customers/delegates": {
      "get": {
        "tags": [
          "Customers"
        ],
        "summary": "Query Customer Delegates",
        "description": "Return a paginated list of matching customer delegates.",
        "operationId": "QueryCustomerDelegates",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return customer delegates that were created at or after this timestamp",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return customer delegates that were created at or before this timestamp",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "emailAddress",
            "in": "query",
            "description": "Filter by customer delegate email address",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "customerDelegateId",
            "in": "query",
            "description": "Filter by customer delegate system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filter by name of the delegate",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CustomerDelegateResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT | Customer JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Upsert Customer Delegate",
        "description": "Upsert customer delegate",
        "operationId": "UpsertCustomerDelegate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertCustomerDelegateRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerDelegateResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT | Customer JWT": []
          }
        ]
      }
    },
    "/customers/delegates/{customerDelegateId}": {
      "get": {
        "tags": [
          "Customers"
        ],
        "summary": "Get Customer Delegate",
        "description": "Return details of a customer delegate.",
        "operationId": "GetCustomerDelegate",
        "parameters": [
          {
            "name": "customerDelegateId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerDelegateResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT | Customer JWT": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Customers"
        ],
        "summary": "Update Customer Delegate",
        "description": "Various actions for updating a customer delegate such as linking to a new customer.",
        "operationId": "UpdateCustomerDelegate",
        "parameters": [
          {
            "name": "customerDelegateId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerDelegateRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerDelegateResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT | Customer JWT": []
          }
        ]
      }
    },
    "/merchants": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Query Merchants",
        "description": "Return a paginated list of matching merchants.",
        "operationId": "QueryMerchants",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "businessName",
            "in": "query",
            "description": "Filter by business name",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isActivated",
            "in": "query",
            "description": "Filter by whether the business is activated",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "payoutStatus",
            "in": "query",
            "description": "Filter by whether payouts are enabled for this merchant",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/MerchantPayoutStatus"
            }
          },
          {
            "name": "marketplaceId",
            "in": "query",
            "description": "Filter by marketplace",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "referenceMerchantId",
            "in": "query",
            "description": "Filter by reference merchant id",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MerchantResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Merchants"
        ],
        "summary": "Create Merchant",
        "description": "Create a new sub-merchant within the context of a marketplace.",
        "operationId": "CreateMerchant",
        "parameters": [
          {
            "name": "Marketplace-Id",
            "in": "header",
            "description": "Perform operation in the context of the given marketplace. Usually not required — specify only if acting on behalf of a marketplace not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMarketplaceMerchantRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Admin JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Get Merchant",
        "description": "Return details of a merchant.",
        "operationId": "GetMerchant",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Merchants"
        ],
        "summary": "Update Merchant",
        "description": "Various actions for updating a merchant such as updating the bank account used for payouts.",
        "operationId": "UpdateMerchant",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMerchantRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Pay By Link Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}/balances": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Query Balances",
        "description": "Query the account balances of a merchant.",
        "operationId": "QueryBalances",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantBalances"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}/files": {
      "post": {
        "tags": [
          "Merchants"
        ],
        "summary": "Upload Merchant File",
        "description": "Upload a document scan as part of the merchant onboarding profile. The maximum permitted file size is 10MB. Supported file types are JPEG, PNG and PDF.",
        "operationId": "UploadMerchantFile",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/MerchantOnboardingFileUploadRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantFileUploadResult"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}/files/{fileId}": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Get Merchant File",
        "description": "Get details on a merchant onboarding file",
        "operationId": "GetMerchantFile",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fileId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantFileResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}/applepay": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Get Merchant Apple Pay Domains",
        "description": "Get the domains registered for ApplePay for the specified merchant",
        "operationId": "GetMerchantApplePayDomains",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantApplepayDetailsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}/owners": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "List Beneficial Owners",
        "description": "Return details of all beneficial owners for the given merchant.",
        "operationId": "ListBeneficialOwners",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BeneficialOwnerResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Merchants"
        ],
        "summary": "Create Beneficial Owner",
        "description": "Create a beneficial owner for the given merchant.",
        "operationId": "CreateBeneficialOwner",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BeneficialOwnerProfile"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BeneficialOwnerResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/{merchantId}/owners/{ownerId}": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Get Beneficial Owner",
        "description": "Return details of a beneficial owner.",
        "operationId": "GetBeneficialOwner",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ownerId",
            "in": "path",
            "description": "Identifier of beneficial owner",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BeneficialOwnerResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "put": {
        "tags": [
          "Merchants"
        ],
        "summary": "Replace Beneficial Owner",
        "description": "Overwrite an existing beneficial owner.",
        "operationId": "ReplaceBeneficialOwner",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ownerId",
            "in": "path",
            "description": "Identifier of beneficial owner",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BeneficialOwnerProfile"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BeneficialOwnerResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Merchants"
        ],
        "summary": "Delete Beneficial Owner",
        "description": "Delete a beneficial owner.",
        "operationId": "DeleteBeneficialOwner",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ownerId",
            "in": "path",
            "description": "Identifier of beneficial owner",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/merchants/industries": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Get Industries",
        "description": "List all industries we currently support. Merchants in April need to be assigned an industry during onboarding.",
        "operationId": "GetIndustries",
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IndustryInfo"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/sources/{sourceId}": {
      "get": {
        "tags": [
          "Payment sources"
        ],
        "summary": "Get Payment Source",
        "operationId": "GetPaymentSource",
        "parameters": [
          {
            "name": "sourceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentSourceResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Admin JWT | Customer JWT": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Payment sources"
        ],
        "summary": "Delete Payment Source",
        "operationId": "DeletePaymentSource",
        "parameters": [
          {
            "name": "sourceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token": []
          }
        ]
      }
    },
    "/sources": {
      "get": {
        "tags": [
          "Payment sources"
        ],
        "summary": "Query Payment Sources",
        "description": "Return a paginated list of matching payment sources.",
        "operationId": "QueryPaymentSources",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by merchant customer system identifier.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerDelegateId",
            "in": "query",
            "description": "Filter by customer delegate system identifier.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "usageScope",
            "in": "query",
            "description": "Filter by usage scope",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/PaymentSourceUsageScope"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PaymentSourceResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Customer JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Payment sources"
        ],
        "summary": "Create Payment Source",
        "description": "Register a payment source that may be used to pay for one or more payments. For integrators who wish to call this endpoint directly, you must be PCI certified since you will be handling raw card details.",
        "operationId": "CreatePaymentSource",
        "parameters": [
          {
            "name": "Customer-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant customer. Usually not required — specify only if acting on behalf of a merchant customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Customer-Delegate-User-Id",
            "in": "header",
            "description": "Perform operation in the context of the given organisation customer. Usually not required — specify only if acting on behalf of a organisation customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePaymentSourceRequest_Vault"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentSourceResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT": []
          }
        ]
      }
    },
    "/sources/blockedcards": {
      "get": {
        "tags": [
          "Payment sources"
        ],
        "summary": "Query Blocked Card Events",
        "description": "Return a paginated list of events related to cards that have been blocked.",
        "operationId": "QueryBlockedCardEvents",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by merchant customer system identifier.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant system identifier.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "marketplaceId",
            "in": "query",
            "description": "Filter by merchant system identifier.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "transactionId",
            "in": "query",
            "description": "Filter by transaction system identifier.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "cardBlockId",
            "in": "query",
            "description": "Filter by card block system identifier.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "cardBrand",
            "in": "query",
            "description": "Filter by card brand.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/CardBrand"
              }
            }
          },
          {
            "name": "last4",
            "in": "query",
            "description": "Filter by card last four digits.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdFromInclusive",
            "in": "query",
            "description": "Return records that were created at or after this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdToExclusive",
            "in": "query",
            "description": "Return records that were created before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "eventType",
            "in": "query",
            "description": "Filter by block card event type",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/BlockedCardEventType"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BlockedCardResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/sources/blockedcards/{cardBlockId}": {
      "patch": {
        "tags": [
          "Payment sources"
        ],
        "summary": "Update Blocked Card",
        "description": "Update actions on blocked cards.",
        "operationId": "UpdateBlockedCard",
        "parameters": [
          {
            "name": "cardBlockId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlockedCardRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockedCardResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/tokens": {
      "post": {
        "tags": [
          "Payment tokens"
        ],
        "summary": "Create Payment Token",
        "description": "\nGenerate a pay-in-full payment token based on the provided payment source. The token can be used to pay for an order of the given amount and currency.\n\nAuthenticated customers can only create tokens for themselves and not for other customers.\nAll other clients may specify the customer they wish to be associated with the payment token using the\n`Customer-Id` header or by providing a customer specific payment source.\nIf authenticating with a merchant public key, you cannot use a customer specific payment source.\n\nFor marketplace clients, you will need to indicate the merchant to create the token against using\nthe `Merchant-Id` header.\n",
        "operationId": "CreatePaymentToken",
        "parameters": [
          {
            "name": "Customer-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant customer. Usually not required — specify only if acting on behalf of a merchant customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePaymentTokenRequest_Vault"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/tokens/{paymentTokenId}": {
      "get": {
        "tags": [
          "Payment tokens"
        ],
        "summary": "Query Payment Token",
        "description": "Get the details for a pay-in-full payment token.",
        "operationId": "QueryPaymentToken",
        "parameters": [
          {
            "name": "paymentTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentTokenData"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/tokens/{merchantId}/surchargequote": {
      "post": {
        "tags": [
          "Payment tokens"
        ],
        "summary": "Calculate Surcharge",
        "description": "Calculates the surcharged amounts for the specified payment type.",
        "operationId": "CalculateSurcharge",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalculateSurchargeRequest_Vault"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalculateSurchargeResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/payplans/offer": {
      "post": {
        "tags": [
          "Pay plans"
        ],
        "summary": "Create Pay Plan Offer",
        "description": "Create a pay plan offer for a registered and KYC'd merchant customer.\nThe offer returned must be used to create a pay plan within 10 minutes.\nAfter this point, generate a new offer by calling this endpoint again.\n\nIf called with a customer JWT, the pay plan is created for that customer,\notherwise the customer must be provided via the `Customer-Id` request header.\n",
        "operationId": "CreatePayPlanOffer",
        "parameters": [
          {
            "name": "Customer-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant customer. Usually not required — specify only if acting on behalf of a merchant customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePayPlanOfferRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePayPlanOfferResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/payplans": {
      "get": {
        "tags": [
          "Pay plans"
        ],
        "summary": "Query Pay Plans",
        "description": "Return a paginated list of matching pay plans.",
        "operationId": "QueryPayPlans",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "payPlanState",
            "in": "query",
            "description": "Filter by pay plan state",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/PayPlanState"
              }
            }
          },
          {
            "name": "payPlanVariant",
            "in": "query",
            "description": "Filter by pay plan variant",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/PayPlanVariant"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PayPlanResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Pay plans"
        ],
        "summary": "Create Pay Plan",
        "description": "Create a pay plan and payment token from a successful pay plan offer.\nThe payment token can be used to pay for an order for the matching amount and merchant.\n\nIf called with a customer JWT, the pay plan is created for that customer,\notherwise the customer must be provided via the `Customer-Id` request header.\n",
        "operationId": "CreatePayPlan",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePayPlanRequest_Vault"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePayPlanResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/payplans/{payPlanId}": {
      "get": {
        "tags": [
          "Pay plans"
        ],
        "summary": "Get Pay Plan",
        "description": "Return details of a pay plan.",
        "operationId": "GetPayPlan",
        "parameters": [
          {
            "name": "payPlanId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayPlanResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      }
    },
    "/payplans/max": {
      "post": {
        "tags": [
          "Pay plans"
        ],
        "summary": "Calculate Pay Plan Max Loan",
        "description": "Return the maximum loan amount the given customer is currently eligible for.",
        "operationId": "CalculatePayPlanMaxLoan",
        "parameters": [
          {
            "name": "Customer-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant customer. Usually not required — specify only if acting on behalf of a merchant customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MaxLoanRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MaxLoanResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      }
    },
    "/payplans/parameters": {
      "post": {
        "tags": [
          "Pay plans"
        ],
        "summary": "Calculate Pay Plan Parameters",
        "description": "Calculate the pay plan parameters for the given amount and list of variants. \n\n**Beta release** - This endpoint is close to being finalised but non-backward compatible changes to parameters and behaviour may still occur.",
        "operationId": "CalculatePayPlanParameters",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayPlanParametersRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayPlanParametersResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT": []
          }
        ]
      }
    },
    "/orders": {
      "get": {
        "tags": [
          "Orders"
        ],
        "summary": "Query Orders",
        "description": "Return a paginated list of matching orders",
        "operationId": "QueryOrders",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderId",
            "in": "query",
            "description": "Filter by merchant order id",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "orderType",
            "in": "query",
            "description": "Filter by order type",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/OrderType1"
              }
            }
          },
          {
            "name": "referenceOrderId",
            "in": "query",
            "description": "Filter by reference order id",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "orderStatus",
            "in": "query",
            "description": "Filter by order status",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/OrderStatus"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/OrderResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Orders"
        ],
        "summary": "Create Order",
        "description": "Creates a new order",
        "operationId": "CreateOrder",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Customer-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant customer. Usually not required — specify only if acting on behalf of a merchant customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrderRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrderResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Marketplace JWT | Merchant JWT": []
          }
        ]
      }
    },
    "/orders/{orderId}/pay": {
      "post": {
        "tags": [
          "Orders"
        ],
        "summary": "Pay Order",
        "description": "\nPay for an order using a payment token. Make sure you read the [Error Handling](/developer-portal/error-handling/) page\nas you will need to add some logic to handle a 3DS challenge for card based payments.\n\n3DS may be required for several reasons including\n * Explicitly requesting it in the request\n * An eligibility requirement to establish a pay plan\n * Required by the card issuer\n",
        "operationId": "PayOrder",
        "parameters": [
          {
            "name": "orderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayOrderRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayOrderResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "501": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Pay By Link Token": []
          }
        ]
      }
    },
    "/orders/{orderId}": {
      "get": {
        "tags": [
          "Orders"
        ],
        "summary": "Get Order",
        "description": "Retrieves an order",
        "operationId": "GetOrder",
        "parameters": [
          {
            "name": "orderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Pay By Link Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Orders"
        ],
        "summary": "Cancel Order",
        "description": "Cancels an order, invalidating it from being payable.",
        "operationId": "CancelOrder",
        "parameters": [
          {
            "name": "orderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Orders"
        ],
        "summary": "Update Order",
        "description": "Actions for modifying an existing order",
        "operationId": "UpdateOrder",
        "parameters": [
          {
            "name": "orderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOrderRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT": []
          }
        ]
      }
    },
    "/transactions/{transactionId}": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Get Transaction",
        "description": "Return details of a transaction.",
        "operationId": "GetTransaction",
        "parameters": [
          {
            "name": "transactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Transactions"
        ],
        "summary": "Update Transaction",
        "description": "Various actions for updating a transaction such as issuing a refund.",
        "operationId": "UpdateTransaction",
        "parameters": [
          {
            "name": "transactionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTransactionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Query Transactions",
        "description": "Return a paginated list of matching transactions.",
        "operationId": "QueryTransactions",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return transactions that were created at or after this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return transactions that were created at or before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "amount",
            "in": "query",
            "description": "Amount of the transaction",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "referenceTransactionId",
            "in": "query",
            "description": "Filter by reference transaction identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "parentAcquiringTransactionId",
            "in": "query",
            "description": "Filter by the transaction's parent aquiring transaction identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "parentIssuerTransactionId",
            "in": "query",
            "description": "Filter by the transaction's parent issuer transaction identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by the status of the transaction",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/TransactionStatus"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TransactionResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/transactions/payouts": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Query Payout Summaries",
        "description": "Return a paginated list of matching payout summaries.",
        "operationId": "QueryPayoutSummaries",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Merchant to show entries for",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "payoutId",
            "in": "query",
            "description": "Filter by payout system identifier.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "referencePayoutId",
            "in": "query",
            "description": "Filter by reference payout id.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return payouts that were created at or after this timestamp in ISO-8601 format. Defaults to 30 days ago.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return payouts that were created at or before this timestamp in ISO-8601 format. Defaults to today. The total date range must be 180 days or less.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PayoutSummary"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Transactions"
        ],
        "summary": "Create Manual Payout",
        "description": "\nRequest to create a manual payout for a merchant. Merchants can only request manual payouts if they have a sufficient available balance.\nThis call requires manual payouts to be enabled for the merchant.\n",
        "operationId": "CreateManualPayout",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateManualPayoutRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayoutSummary"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/payouts/{payoutId}": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Get Payout Details",
        "description": "Return an aggregated breakdown of the money movements included in the payout along with details of the disbursement itself.",
        "operationId": "GetPayoutDetails",
        "parameters": [
          {
            "name": "payoutId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayoutDetails"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/invoices": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Query Merchant Invoices",
        "description": "Return a paginated list of matching merchant invoices.",
        "operationId": "QueryMerchantInvoices",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Merchant to show entries for",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by invoice status",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/MerchantInvoiceStatus"
              }
            }
          },
          {
            "name": "issuedOnFromInclusive",
            "in": "query",
            "description": "Return invoices that were issued at or after this date in ISO-8601 format.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            },
            "example": "2026-02-26"
          },
          {
            "name": "issuedOnToInclusive",
            "in": "query",
            "description": "Return invoices that were created at or before this timestamp in ISO-8601 format.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MerchantInvoiceSummary"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/invoices/{invoiceId}": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Get Merchant Invoice Details",
        "description": "Return an aggregated breakdown of the money movements included in the invoice along with billing details.",
        "operationId": "GetMerchantInvoiceDetails",
        "parameters": [
          {
            "name": "invoiceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MerchantInvoiceDetails"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/invoices/{invoiceId}/pdf": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Get Merchant Invoice Pdf",
        "description": "Return a PDF of the merchant invoice intended to be sent to the payer merchant.",
        "operationId": "GetMerchantInvoicePdf",
        "parameters": [
          {
            "name": "invoiceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "headers": {
              "Content-Type": {
                "required": true,
                "schema": {
                  "type": "string"
                }
              },
              "Content-Disposition": {
                "required": true,
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/pdf": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/settlement": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Query Settlement Entries",
        "description": "\nReturn a paginated list of all settlement entries matching the given search criteria.\nIf payoutId is not specified, currency, createdAfter and createdBefore must all be provided.\n",
        "operationId": "QuerySettlementEntries",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "System identifier for merchant to show entries for",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "Currency of entries",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/IsoCurrency"
            },
            "example": "AUD"
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return settlement entries that were created at or after this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return settlement entries that were created at or before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "settlementType",
            "in": "query",
            "description": "Include both payment and fee entries (Net) or just payment entries (Gross).",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/SettlementType",
              "default": "Net"
            }
          },
          {
            "name": "payoutId",
            "in": "query",
            "description": "Filter by payout identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "invoiceId",
            "in": "query",
            "description": "Filter by merchant invoice identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SettlementReport"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/settlement/report": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Report Settlement Entries",
        "description": "\nReturn a list of all settlement entries matching the given search criteria.\nIf payoutId is not specified, currency, createdAfter and createdBefore must all be provided.\nUse `Accept` request header to specify either `application/json` or `text/csv` responses.\nThe JSON variant includes an aggregated summary of the matching entries.\n",
        "operationId": "ReportSettlementEntries",
        "parameters": [
          {
            "name": "column",
            "in": "query",
            "description": "List of columns to include in the report. If not specified, default column list is used.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/SettlementCsvColumn"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "System identifier for merchant to show entries for",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "Currency of entries",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/IsoCurrency"
            },
            "example": "AUD"
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return settlement entries that were created at or after this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return settlement entries that were created at or before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "settlementType",
            "in": "query",
            "description": "Include both payment and fee entries (Net) or just payment entries (Gross).",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/SettlementType",
              "default": "Net"
            }
          },
          {
            "name": "payoutId",
            "in": "query",
            "description": "Filter by payout identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "invoiceId",
            "in": "query",
            "description": "Filter by merchant invoice identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SettlementReport"
                }
              },
              "text/csv": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/disputes": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Query Disputes",
        "description": "\nReturn a paginated list of all disputes matching the given search criteria.\n",
        "operationId": "QueryDisputes",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerEmailAddress",
            "in": "query",
            "description": "Filter by customer email address",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "referenceOrderId",
            "in": "query",
            "description": "Filter by reference order id",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderId",
            "in": "query",
            "description": "Filter by order identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "transactionId",
            "in": "query",
            "description": "Filter by transaction identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "Currency of entries",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "AUD"
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DisputeResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/transactions/refunds": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Query Refunds",
        "description": "Return a paginated list of matching refunds.",
        "operationId": "QueryRefunds",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdAfter",
            "in": "query",
            "description": "Return transactions that were created at or after this timestamp in ISO-8601 format. Defaults to 30 days ago.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdBefore",
            "in": "query",
            "description": "Return transactions that were created at or before this timestamp in ISO-8601 format. Defaults to now.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "amount",
            "in": "query",
            "description": "Amount of the refund in minor currency units",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "referenceOrderId",
            "in": "query",
            "description": "Filter by reference order id",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderId",
            "in": "query",
            "description": "Filter by order identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "transactionId",
            "in": "query",
            "description": "Filter by transaction identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RefundResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/marketplaces/{marketplaceId}": {
      "get": {
        "tags": [
          "Marketplaces"
        ],
        "summary": "Get Marketplace",
        "description": "Return details of a marketplace.",
        "operationId": "GetMarketplace",
        "parameters": [
          {
            "name": "marketplaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MarketplaceResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Admin JWT | Marketplace JWT": []
          }
        ]
      }
    },
    "/marketplaces/customer": {
      "post": {
        "tags": [
          "Marketplaces"
        ],
        "summary": "Upsert Marketplace Customer",
        "description": "\nMarketplace customers allow marketplaces to onboard their customers once and have them available over all their sub-merchants.\nTo set up payments for these payments, generate the merchant customer for the relevant sub-merchant using\n[Upsert Customer](/openapi/april-public/customers/upsertcustomer/)\n",
        "operationId": "UpsertMarketplaceCustomer",
        "parameters": [
          {
            "name": "Marketplace-Id",
            "in": "header",
            "description": "Perform operation in the context of the given marketplace. Usually not required — specify only if acting on behalf of a marketplace not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertMarketplaceCustomerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MarketplaceCustomerResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/webhooks": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Query Webhook Subscriptions",
        "description": "Return a paginated list of matching webhook subscriptions.",
        "operationId": "QueryWebhookSubscriptions",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Only include webhook merchant subscriptions for this given list of sub-merchants. Only relevant for marketplace users interested in merchant level subscriptions.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "marketplaceId",
            "in": "query",
            "description": "Only include webhook marketplace subscriptions for the given marketplaceId. Only relevant for admin users interested in marketplace level subscriptions.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by subscription status",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/WebhookSubscriptionState"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookSubscriptionResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Create Webhook Subscription",
        "description": "\nCreate a new webhook subscription. If called with a marketplace API key, the subscription will be at the marketplace level.\nIf called with merchant credentials or if the `Merchant-Id` header is provided, the subscription will be at the merchant level.\n",
        "operationId": "CreateWebhookSubscription",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWebhookSubscriptionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookSubscriptionResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Marketplace JWT | Merchant JWT": []
          }
        ]
      }
    },
    "/webhooks/{id}": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Get Webhook Subscription",
        "description": "Return details of a webhook subscription.",
        "operationId": "GetWebhookSubscription",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookSubscriptionResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": []
          }
        ]
      },
      "patch": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Update Webhook Subscription",
        "description": "Update an existing webhook subscription.",
        "operationId": "UpdateWebhookSubscription",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateWebhookSubscriptionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookSubscriptionResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Marketplace JWT | Merchant JWT": []
          }
        ]
      }
    },
    "/simulation": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "summary": "Simulation",
        "description": "Sandbox only endpoint to simulate external events such as a bank transfer being performed",
        "operationId": "Simulation",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/payto/alias": {
      "get": {
        "tags": [
          "PayTo"
        ],
        "summary": "Pay To Lookup Alias",
        "description": "Returns the display name for the account alias",
        "operationId": "PayToLookupAlias",
        "parameters": [
          {
            "name": "aliasType",
            "in": "query",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AliasType"
            }
          },
          {
            "name": "aliasValue",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LookupAliasResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/payto/agreement": {
      "get": {
        "tags": [
          "PayTo"
        ],
        "summary": "Pay To Get Agreement State",
        "description": "Get agreement state",
        "operationId": "PayToGetAgreementState",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAgreementStateResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "PayTo"
        ],
        "summary": "Pay To Send Agreement",
        "description": "Send agreement request to customer",
        "operationId": "PayToSendAgreement",
        "parameters": [
          {
            "name": "Merchant-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant. Usually not required — specify only if acting on behalf of a merchant not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Customer-Id",
            "in": "header",
            "description": "Perform operation in the context of the given merchant customer. Usually not required — specify only if acting on behalf of a merchant customer not implied by the credentials specified in the `Authorization` header.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendAgreementRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendAgreementResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": []
          }
        ]
      }
    },
    "/loans": {
      "get": {
        "tags": [
          "Loans"
        ],
        "summary": "Query Loan Summaries",
        "description": "Return a paginated list of matching loan summaries.",
        "operationId": "QueryLoanSummaries",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "loanId",
            "in": "query",
            "description": "Filter by loan system identifiers.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "referenceLoanId",
            "in": "query",
            "description": "Filter by reference loan id.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "loanProductType",
            "in": "query",
            "description": "Filter by loan product type.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/LoanProductType"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "Filter by currency",
            "required": false,
            "schema": {
              "type": "string"
            },
            "example": "AUD"
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by loan status",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Status1"
              }
            }
          },
          {
            "name": "createdFromInclusive",
            "in": "query",
            "description": "Return loans that were created at or after this timestamp in ISO-8601 format",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdToExclusive",
            "in": "query",
            "description": "Return loans that were created before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoanSummaryResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/loans/statements/{loanStatementId}": {
      "get": {
        "tags": [
          "Loans"
        ],
        "summary": "Get Loan Statement Summary",
        "description": "Return a loan statement summary.",
        "operationId": "GetLoanStatementSummary",
        "parameters": [
          {
            "name": "loanStatementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoanStatementSummaryResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/loans/statements": {
      "get": {
        "tags": [
          "Loans"
        ],
        "summary": "Query Loan Statement Summaries",
        "description": "Return a paginated list of matching loan statement summaries.",
        "operationId": "QueryLoanStatementSummaries",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "loanId",
            "in": "query",
            "description": "Filter by loan system identifiers.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "loanStatementId",
            "in": "query",
            "description": "Filter by loan statement system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "referenceStatementId",
            "in": "query",
            "description": "Filter by reference statement identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "merchantId",
            "in": "query",
            "description": "Filter by merchant identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "description": "Filter by customer identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "currency",
            "in": "query",
            "description": "Filter by currency",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "AUD"
          },
          {
            "name": "createdFromInclusive",
            "in": "query",
            "description": "Return loan activity that was created at or after this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "example": "2026-02-26T03:26:15.701Z"
          },
          {
            "name": "createdToExclusive",
            "in": "query",
            "description": "Return loan activity that were created before this timestamp in ISO-8601 format",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "dueOnFromInclusive",
            "in": "query",
            "description": "Return loan activity that is due on or after this date in ISO-8601 format.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            },
            "example": "2026-02-26"
          },
          {
            "name": "dueOnToInclusive",
            "in": "query",
            "description": "Return loan activity that is due on or before this date in ISO-8601 format.",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LoanStatementSummaryResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/loans/statements/entries": {
      "get": {
        "tags": [
          "Loans"
        ],
        "summary": "Query Loan Statement Entries",
        "description": "\nReturn a paginated list of matching loan statement entries.\n\n\n\n**Alpha release** - Consider this endpoint experimental and very likely to change in future.\n",
        "operationId": "QueryLoanStatementEntries",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "loanStatementId",
            "in": "query",
            "description": "Filter by loan statement system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoanStatementReport"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Enterprise API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/loans/enterprise/statements/{loanStatementId}/download": {
      "get": {
        "tags": [
          "Loans"
        ],
        "summary": "Download Loan Statement",
        "description": "Return a loan statement report in either CSV, PDF or XML format. The report is provided in a password protected zip file.",
        "operationId": "DownloadLoanStatement",
        "parameters": [
          {
            "name": "loanStatementId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mediaType",
            "in": "query",
            "description": "The file format to use for the report",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/LoanStatementReportMediaType"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "headers": {
              "Content-Disposition": {
                "required": true,
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/zip": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Admin JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/loans/statements/entries/report": {
      "get": {
        "tags": [
          "Loans"
        ],
        "summary": "Report Loan Statement Entries",
        "description": "\nReturn a list of all loan statement entries matching the given search criteria.\nIf loanSettlementId or loanId is not specified, currency, and a date range (either created at or due on) must be provided.\n\n\n\n**Alpha release** - Consider this endpoint experimental and very likely to change in future.\n",
        "operationId": "ReportLoanStatementEntries",
        "parameters": [
          {
            "name": "loanStatementId",
            "in": "query",
            "description": "Filter by loan statement system identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoanStatementReport"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Marketplace API Key | Enterprise API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": []
          }
        ]
      }
    },
    "/issuer/card": {
      "get": {
        "tags": [
          "Card issuer"
        ],
        "summary": "Query Digital Cards",
        "description": "Return a paginated list of matching digital card summaries.",
        "operationId": "QueryDigitalCards",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum results per page. Default to 20, must be between 1 and 500.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "page",
            "in": "query",
            "description": "Page number of results to show (starting at page 1).",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a `-` character.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "Filter by digitalCard status",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/DigitalCardStatus"
              }
            }
          },
          {
            "name": "last4",
            "in": "query",
            "description": "Filter by the last 4 digits of the digital card number",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerDelegateUserId",
            "in": "query",
            "description": "Filter by customer delegate identifier",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "excludeExpired",
            "in": "query",
            "description": "Whether to exclude expired cards",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "loanId",
            "in": "query",
            "description": "Filter by loan identifier",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Matching items sorted as specified",
            "headers": {
              "Page-Count": {
                "description": "Total count of pages available for current query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "Total-Record-Count": {
                "description": "Total number of records matching the query.",
                "required": true,
                "schema": {
                  "type": "integer",
                  "format": "int64"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RedactedCardDetails"
                  }
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Customer API Key | Merchant JWT | Customer JWT": []
          }
        ]
      },
      "post": {
        "tags": [
          "Card issuer"
        ],
        "summary": "Administer Digital Card",
        "description": "Administer digital card(s).",
        "operationId": "AdministerDigitalCard",
        "parameters": [
          {
            "name": "encryption-key-name",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AdministerDigitalCardRequest_Vault"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdministerDigitalCardResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "406": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "422": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "security": [
          {
            "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Customer API Key | Merchant JWT | Customer JWT": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AccountIdentifier": {
        "title": "AccountIdentifier",
        "description": "Acount to be charged using PayTo network",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Alias"
          },
          {
            "$ref": "#/components/schemas/Bban"
          }
        ]
      },
      "AccountVerificationResponseDto": {
        "title": "AccountVerificationResponseDto",
        "type": "object",
        "required": [
          "status",
          "provider",
          "createdAt"
        ],
        "properties": {
          "status": {
            "$ref": "#/components/schemas/MatchStatus"
          },
          "matchName": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "provider": {
            "$ref": "#/components/schemas/VerificationProvider"
          },
          "rawResponse": {},
          "failureMessage": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "AddMerchantBankAccount": {
        "title": "AddMerchantBankAccount",
        "type": "object",
        "required": [
          "AddMerchantBankAccount"
        ],
        "properties": {
          "AddMerchantBankAccount": {
            "$ref": "#/components/schemas/AddMerchantBankAccount1"
          }
        }
      },
      "AddMerchantBankAccount1": {
        "title": "AddMerchantBankAccount",
        "description": "Add a new bank account associated with this merchant. The newly added account will automatically be set as the primary bank account where payouts are deposited into.",
        "type": "object",
        "required": [
          "accountName",
          "identifier",
          "currency"
        ],
        "properties": {
          "accountName": {
            "description": "Name of the person or business that holds the account",
            "type": "string"
          },
          "bankName": {
            "description": "Name of financial institution where the account is held.",
            "type": "string"
          },
          "identifier": {
            "$ref": "#/components/schemas/BankAccountIdentifier"
          },
          "currency": {
            "description": "3 letter ISO code indicating the currency of the bank account.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "setAsPrimary": {
            "description": "Make this account the primary bank account for the merchant. If not provided, the account will be set as primary.",
            "type": "boolean"
          },
          "referenceAccountId": {
            "description": "An optional reference provided by the merchant to identify this account. Must be unique for the given merchant.",
            "type": "string"
          },
          "requesterId": {
            "description": "An optional identifier of the requester. Required to perform Bank Account Validation",
            "type": "string"
          }
        }
      },
      "Address": {
        "title": "Address",
        "type": "object",
        "required": [
          "line1",
          "city",
          "postalCode",
          "country"
        ],
        "properties": {
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "postalCode": {
            "type": "string"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "AddressAndName": {
        "title": "AddressAndName",
        "type": "object",
        "required": [
          "address",
          "name"
        ],
        "properties": {
          "address": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        }
      },
      "AddressOnly": {
        "title": "AddressOnly",
        "type": "object",
        "required": [
          "address"
        ],
        "properties": {
          "address": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          }
        }
      },
      "AdministerDigitalCardRequest_Vault": {
        "title": "AdministerDigitalCardRequest_Vault",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateDigitalCardRequestMastercard"
          },
          {
            "$ref": "#/components/schemas/CreateDigitalCardRequestMastercardWithDbi"
          },
          {
            "$ref": "#/components/schemas/CreateDigitalCardRequestUatp"
          },
          {
            "$ref": "#/components/schemas/CreateSynonymsForDigitalCardsRequest"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardRedactedRequest"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardUnredactedRequest"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardsUnredactedBySynonymRequest"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardRequestMastercard"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardRequestMastercardWithDbi"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardStatusRequest"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardTransactionLimitRequest"
          }
        ]
      },
      "AdministerDigitalCardResponse": {
        "title": "AdministerDigitalCardResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateDigitalCardResponseMastercard"
          },
          {
            "$ref": "#/components/schemas/CreateDigitalCardResponseUatp"
          },
          {
            "$ref": "#/components/schemas/CreateSynonymsForDigitalCardsResponse"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardRedactedResponse"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardUnredactedResponse"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardsForLoanResponse"
          },
          {
            "$ref": "#/components/schemas/GetDigitalCardsUnredactedBySynonym"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardResponseMastercard"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardStatusResponse"
          },
          {
            "$ref": "#/components/schemas/UpdateDigitalCardTransactionLimitResponse"
          }
        ]
      },
      "AgreementRequestTerms": {
        "title": "AgreementRequestTerms",
        "description": "Terms for the agreement",
        "oneOf": [
          {
            "$ref": "#/components/schemas/AgreementRequestTermsOneOff"
          },
          {
            "$ref": "#/components/schemas/AgreementRequestTermsOpen"
          }
        ]
      },
      "AgreementRequestTermsOneOff": {
        "title": "AgreementRequestTermsOneOff",
        "type": "object",
        "required": [
          "AgreementRequestTermsOneOff"
        ],
        "properties": {
          "AgreementRequestTermsOneOff": {
            "$ref": "#/components/schemas/AgreementRequestTermsOneOff1"
          }
        }
      },
      "AgreementRequestTermsOneOff1": {
        "title": "AgreementRequestTermsOneOff",
        "description": "Single-use agreement used when approving each full payment is required",
        "type": "object",
        "required": [
          "amount"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/PaymentAmount",
            "description": "Amount of the payment this agreement will be used for"
          }
        }
      },
      "AgreementRequestTermsOpen": {
        "title": "AgreementRequestTermsOpen",
        "type": "object",
        "required": [
          "AgreementRequestTermsOpen"
        ],
        "properties": {
          "AgreementRequestTermsOpen": {
            "$ref": "#/components/schemas/AgreementRequestTermsOpen1"
          }
        }
      },
      "AgreementRequestTermsOpen1": {
        "title": "AgreementRequestTermsOpen",
        "description": "Open agreement intended to be saved as reusable payment source",
        "type": "object"
      },
      "AgreementStatus": {
        "title": "AgreementStatus",
        "type": "string",
        "enum": [
          "Pending",
          "Created",
          "Active",
          "Suspended",
          "Cancelled",
          "Declined",
          "Failed",
          "Expired"
        ]
      },
      "Alias": {
        "title": "Alias",
        "type": "object",
        "required": [
          "Alias"
        ],
        "properties": {
          "Alias": {
            "$ref": "#/components/schemas/Alias1"
          }
        }
      },
      "Alias1": {
        "title": "Alias",
        "description": "Alias associated with a bank account",
        "type": "object",
        "required": [
          "aliasType",
          "value"
        ],
        "properties": {
          "aliasType": {
            "$ref": "#/components/schemas/AliasType"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "AliasType": {
        "title": "AliasType",
        "type": "string",
        "enum": [
          "Phone",
          "Email",
          "Abn",
          "OrganisationIdentifier"
        ]
      },
      "Allow": {
        "title": "Allow",
        "type": "object"
      },
      "Always": {
        "title": "Always",
        "type": "object"
      },
      "And": {
        "title": "And",
        "type": "object",
        "required": [
          "criteria"
        ],
        "properties": {
          "criteria": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/RuleCriterion"
            }
          }
        }
      },
      "ApiError": {
        "title": "ApiError",
        "type": "object",
        "required": [
          "statusCode",
          "errorCode",
          "message"
        ],
        "properties": {
          "statusCode": {
            "description": "HTTP status code for this error",
            "type": "integer",
            "format": "int32"
          },
          "errorCode": {
            "description": "An April code providing a brief explanation of the underlying error. Use this if you wish to provide custom behaviour based on the error type.",
            "type": "string"
          },
          "message": {
            "description": "Human readable description of the error",
            "type": "string"
          },
          "tracer": {
            "description": "An unique identifier for the request. Provide this to the support team if you wish to query a particular error.",
            "type": "string"
          },
          "detail": {
            "description": "Optional additional details for the error.",
            "type": "string"
          },
          "errorTypeDescription": {
            "description": "A description of the category of errors for the given `statusCode`.",
            "type": "string"
          },
          "metadata": {
            "description": "Optional key value list of metadata"
          }
        }
      },
      "ApplePay": {
        "title": "ApplePay",
        "description": "Payment method is via ApplePay.",
        "type": "object",
        "required": [
          "cardAttributes"
        ],
        "properties": {
          "cardAttributes": {
            "$ref": "#/components/schemas/CardAttributes"
          }
        }
      },
      "ApplePay1": {
        "title": "ApplePay",
        "type": "object",
        "required": [
          "ApplePay"
        ],
        "properties": {
          "ApplePay": {
            "$ref": "#/components/schemas/ApplePay2"
          }
        }
      },
      "ApplePay2": {
        "title": "ApplePay",
        "description": "Payment method is based on an Apple Pay datagram.",
        "type": "object",
        "required": [
          "applePay"
        ],
        "properties": {
          "applePay": {
            "$ref": "#/components/schemas/EncryptedApplePay"
          }
        }
      },
      "ApplePayPaymentMethod": {
        "title": "ApplePayPaymentMethod",
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string"
          },
          "network": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/ApplePayPaymentMethodType"
          }
        }
      },
      "ApplePayPaymentMethodType": {
        "title": "ApplePayPaymentMethodType",
        "type": "string",
        "enum": [
          "debit",
          "credit",
          "prepaid",
          "store"
        ]
      },
      "AssuranceDetailsSpecifications": {
        "title": "AssuranceDetailsSpecifications",
        "type": "object",
        "required": [
          "accountVerified",
          "cardHolderAuthenticated"
        ],
        "properties": {
          "accountVerified": {
            "type": "boolean"
          },
          "cardHolderAuthenticated": {
            "type": "boolean"
          }
        }
      },
      "AttachmentDto": {
        "title": "AttachmentDto",
        "type": "object",
        "required": [
          "contentType",
          "filename"
        ],
        "properties": {
          "contentType": {
            "type": "string"
          },
          "filename": {
            "type": "string"
          }
        }
      },
      "AuBankAccountIdentifier": {
        "title": "AuBankAccountIdentifier",
        "type": "object",
        "required": [
          "AuBankAccountIdentifier"
        ],
        "properties": {
          "AuBankAccountIdentifier": {
            "$ref": "#/components/schemas/AuBankAccountIdentifier1"
          }
        }
      },
      "AuBankAccountIdentifier1": {
        "title": "AuBankAccountIdentifier",
        "type": "object",
        "required": [
          "bsb",
          "accountNumber"
        ],
        "properties": {
          "bsb": {
            "description": "Branch code (also known as BSB), 6 digits.",
            "type": "string"
          },
          "accountNumber": {
            "description": "Account number, all digits.",
            "type": "string"
          }
        }
      },
      "AuthenticationUnavailable": {
        "title": "AuthenticationUnavailable",
        "type": "object",
        "properties": {
          "directoryServerTransactionId": {
            "type": "string"
          },
          "threeDSServerTransID": {
            "type": "string"
          },
          "acsTransID": {
            "type": "string"
          },
          "xid": {
            "type": "string"
          },
          "transStatus": {
            "type": "string"
          },
          "authenticationValue": {
            "type": "string"
          },
          "eci": {
            "type": "string"
          },
          "transStatusReason": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "info": {
            "type": "string"
          },
          "liabilityShifted": {
            "type": "boolean"
          }
        }
      },
      "AutoPaymentFromCreditBalance": {
        "title": "AutoPaymentFromCreditBalance",
        "type": "object",
        "required": [
          "timestamp",
          "amount",
          "user"
        ],
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          },
          "user": {
            "type": "string"
          }
        }
      },
      "BankAccount": {
        "title": "BankAccount",
        "type": "object",
        "required": [
          "accountName",
          "identifier",
          "currency"
        ],
        "properties": {
          "accountName": {
            "description": "Name of the person or business that holds the account",
            "type": "string"
          },
          "bankName": {
            "description": "Name of financial institution where the account is held.",
            "type": "string"
          },
          "identifier": {
            "$ref": "#/components/schemas/BankAccountIdentifier"
          },
          "currency": {
            "description": "3 letter ISO code indicating the currency of the bank account.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          }
        }
      },
      "BankAccountDetails": {
        "title": "BankAccountDetails",
        "type": "object",
        "required": [
          "accountId",
          "accountName",
          "identifier",
          "currency",
          "country",
          "isPrimaryForCurrency",
          "isBlocked"
        ],
        "properties": {
          "accountId": {
            "description": "System unique identifier for a bank account",
            "examples": [
              "xacc_sWY5yPi9OQH31jMA"
            ],
            "type": "string"
          },
          "accountName": {
            "description": "Name of the person or business that holds the account",
            "type": "string"
          },
          "bankName": {
            "description": "Name of financial institution where the account is held.",
            "type": "string"
          },
          "identifier": {
            "$ref": "#/components/schemas/BankAccountIdentifier"
          },
          "currency": {
            "description": "3 letter ISO code indicating the currency of the bank account.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "country": {
            "description": "2 letter ISO code indicating the country where the bank account is held.",
            "type": "string"
          },
          "isPrimaryForCurrency": {
            "description": "Is this the primary account for this merchant for the given currency. The primary account is the one payouts are made to.",
            "type": "boolean"
          },
          "isBlocked": {
            "description": "If true, this bank account can no longer be used for payouts as it has been marked as invalid.",
            "type": "boolean"
          },
          "blockReason": {
            "description": "If account is blocked, this is the reason why.",
            "type": "string"
          },
          "referenceAccountId": {
            "description": "An optional reference provided by the merchant to identify this account. Must be unique for the given merchant.",
            "type": "string"
          }
        }
      },
      "BankAccountIdentifier": {
        "title": "BankAccountIdentifier",
        "description": "Region specific identifier for the bank account.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/AuBankAccountIdentifier"
          },
          {
            "$ref": "#/components/schemas/HkBankAccountIdentifier"
          },
          {
            "$ref": "#/components/schemas/HkUsdBankAccountIdentifier"
          },
          {
            "$ref": "#/components/schemas/NzBankAccountIdentifier"
          },
          {
            "$ref": "#/components/schemas/SgBankAccountIdentifier"
          }
        ]
      },
      "BankAccountToken": {
        "title": "BankAccountToken",
        "type": "object",
        "required": [
          "BankAccountToken"
        ],
        "properties": {
          "BankAccountToken": {
            "$ref": "#/components/schemas/BankAccountToken1"
          }
        }
      },
      "BankAccountToken1": {
        "title": "BankAccountToken",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "emailAddress",
          "agreementAccepted",
          "bankAccount"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "emailAddress": {
            "type": "string"
          },
          "agreementAccepted": {
            "type": "boolean"
          },
          "bankAccount": {
            "$ref": "#/components/schemas/BankAccount"
          }
        }
      },
      "BankTransfer": {
        "title": "BankTransfer",
        "description": "Payment method is via bank transfer.",
        "type": "object"
      },
      "BankTransfer1": {
        "title": "BankTransfer",
        "type": "object",
        "required": [
          "BankTransfer"
        ],
        "properties": {
          "BankTransfer": {
            "$ref": "#/components/schemas/BankTransfer2"
          }
        }
      },
      "BankTransfer2": {
        "title": "BankTransfer",
        "description": "Payment method is via bank transfer.",
        "type": "object"
      },
      "BankTransfer3": {
        "title": "BankTransfer",
        "type": "object",
        "properties": {
          "reference": {
            "description": "Optional reference to be used for reconciling bank transfer payments. If not provided, one will be generated and returned as part of the response.",
            "type": "string"
          }
        }
      },
      "BankTransferDetails": {
        "title": "BankTransferDetails",
        "description": "Details necessary to pay this pay plan via bank transfer. Only present if payment method is enabled for this merchant",
        "type": "object",
        "required": [
          "reference",
          "bankAccountNumber",
          "bankAccountBsb",
          "payId",
          "metadata"
        ],
        "properties": {
          "reference": {
            "description": "Reference to specify to link a bank transfer to this payment",
            "type": "string"
          },
          "bankAccountNumber": {
            "description": "Account number to specify when paying via classic bank transfer",
            "type": "string"
          },
          "bankAccountBsb": {
            "description": "BSB to specify when paying via classic bank transfer",
            "type": "string"
          },
          "payId": {
            "description": "PayID to specify when paying via instant transfer",
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/Map_V",
            "description": "Extra information reserved for future use"
          }
        }
      },
      "BankTransferTokenDetails": {
        "title": "BankTransferTokenDetails",
        "type": "object",
        "required": [
          "BankTransferTokenDetails"
        ],
        "properties": {
          "BankTransferTokenDetails": {
            "$ref": "#/components/schemas/BankTransferTokenDetails1"
          }
        }
      },
      "BankTransferTokenDetails1": {
        "title": "BankTransferTokenDetails",
        "type": "object",
        "required": [
          "reference"
        ],
        "properties": {
          "reference": {
            "type": "string"
          }
        }
      },
      "BankTransfersDetails": {
        "title": "BankTransfersDetails",
        "description": "Bank account details to be used in bank transfer payments.",
        "type": "object",
        "required": [
          "bankAccountBsb",
          "bankAccountNumber",
          "payId"
        ],
        "properties": {
          "bankAccountBsb": {
            "type": "string"
          },
          "bankAccountNumber": {
            "type": "string"
          },
          "payId": {
            "type": "string"
          }
        }
      },
      "Bban": {
        "title": "Bban",
        "type": "object",
        "required": [
          "Bban"
        ],
        "properties": {
          "Bban": {
            "$ref": "#/components/schemas/Bban1"
          }
        }
      },
      "Bban1": {
        "title": "Bban",
        "description": "Bank account number",
        "type": "object",
        "required": [
          "value"
        ],
        "properties": {
          "value": {
            "type": "string"
          }
        }
      },
      "BeneficialOwnerProfile": {
        "title": "BeneficialOwnerProfile",
        "type": "object",
        "required": [
          "title",
          "roles",
          "givenName",
          "familyName",
          "dateOfBirth",
          "address",
          "emailAddress",
          "phoneNumber"
        ],
        "properties": {
          "title": {
            "description": "Title, in relation to the business",
            "type": "string"
          },
          "roles": {
            "description": "Roles of the beneficial owner.",
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/Role"
            }
          },
          "givenName": {
            "type": "string"
          },
          "middleName": {
            "type": "string"
          },
          "familyName": {
            "type": "string"
          },
          "dateOfBirth": {
            "description": "Date of birth in ISO-8601",
            "examples": [
              "1970-08-18"
            ],
            "type": "string",
            "format": "date"
          },
          "address": {
            "$ref": "#/components/schemas/BusinessAddress"
          },
          "emailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number in E164 format, eg.+61400000000",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "passport": {
            "$ref": "#/components/schemas/Passport"
          },
          "driverLicence": {
            "$ref": "#/components/schemas/DriverLicence"
          },
          "verificationDocs": {
            "$ref": "#/components/schemas/VerificationDocs"
          }
        }
      },
      "BeneficialOwnerResponse": {
        "title": "BeneficialOwnerResponse",
        "type": "object",
        "required": [
          "ownerId",
          "profile",
          "verificationResult",
          "isDeletable"
        ],
        "properties": {
          "ownerId": {
            "examples": [
              "pson_23104z2AqWQdZrY7"
            ],
            "type": "string"
          },
          "profile": {
            "$ref": "#/components/schemas/BeneficialOwnerProfile"
          },
          "verificationResult": {
            "$ref": "#/components/schemas/VerificationResult"
          },
          "isDeletable": {
            "type": "boolean"
          }
        }
      },
      "Billing": {
        "title": "Billing",
        "description": "Billing address for the order.",
        "type": "object",
        "required": [
          "address",
          "name"
        ],
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "name": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          }
        }
      },
      "BlockedCardEventType": {
        "title": "BlockedCardEventType",
        "type": "string",
        "enum": [
          "CardBlockAdded",
          "CardBlockEnforced",
          "CardBlockRemoved"
        ]
      },
      "BlockedCardResponse": {
        "title": "BlockedCardResponse",
        "type": "object",
        "required": [
          "cardBlockId",
          "paymentMethod",
          "merchantId",
          "isCardBlocked",
          "eventType",
          "description",
          "createdAt"
        ],
        "properties": {
          "cardBlockId": {
            "examples": [
              "blockedsrc_kS4COuHFlLJHT0jC"
            ],
            "type": "string"
          },
          "customerDetails": {
            "$ref": "#/components/schemas/CustomerDetails"
          },
          "purchaseDetails": {
            "$ref": "#/components/schemas/PurchaseDetails"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/TransactionPaymentMethod"
          },
          "marketplaceId": {
            "description": "System unique identifier for the marketplace in scope, if any.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "System unique identifier for the merchant in scope.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "paymentSourceId": {
            "description": "Payment source system identifier linked to the blocked cord",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "isCardBlocked": {
            "description": "Is the card currently blocked",
            "type": "boolean"
          },
          "eventType": {
            "$ref": "#/components/schemas/BlockedCardEventType"
          },
          "description": {
            "type": "string"
          },
          "blockUserMessage": {
            "description": "Message shown to the user regarding the blocked card",
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "Business": {
        "title": "Business",
        "type": "object"
      },
      "Business1": {
        "title": "Business",
        "type": "object"
      },
      "BusinessAddress": {
        "title": "BusinessAddress",
        "type": "object",
        "required": [
          "streetNumber",
          "streetName",
          "postalCode",
          "country"
        ],
        "properties": {
          "unitNumber": {
            "description": "The address unit number",
            "type": "string"
          },
          "streetNumber": {
            "description": "The address street number",
            "type": "string"
          },
          "streetName": {
            "description": "The address street name",
            "type": "string"
          },
          "streetType": {
            "description": "The address street type, eg Street or Road – not mandatory because 12 The Esplanade",
            "type": "string"
          },
          "suburb": {
            "description": "The address suburb",
            "type": "string"
          },
          "city": {
            "description": "The address city",
            "type": "string"
          },
          "postalCode": {
            "description": "The address postal code. Should be digits between 4 and 10 characters long.",
            "examples": [
              2000
            ],
            "type": "string"
          },
          "state": {
            "description": "The address state",
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/Country",
            "description": "The address country"
          }
        }
      },
      "BusinessAddress1": {
        "title": "BusinessAddress",
        "type": "object",
        "required": [
          "streetNumber",
          "streetName",
          "postcode",
          "postalCode",
          "country"
        ],
        "properties": {
          "unitNumber": {
            "description": "The address unit number",
            "type": "string"
          },
          "streetNumber": {
            "description": "The address street number",
            "type": "string"
          },
          "streetName": {
            "description": "The address street name",
            "type": "string"
          },
          "streetType": {
            "description": "The address street type, eg Street or Road – not mandatory because 12 The Esplanade",
            "type": "string"
          },
          "suburb": {
            "description": "The address suburb",
            "type": "string"
          },
          "city": {
            "description": "The address city",
            "type": "string"
          },
          "postcode": {
            "type": "string"
          },
          "postalCode": {
            "description": "The address postal code. Should be digits between 4 and 10 characters long.",
            "examples": [
              2000
            ],
            "type": "string"
          },
          "state": {
            "description": "The address state",
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/Country",
            "description": "The address country"
          }
        }
      },
      "BusinessContactPerson": {
        "title": "BusinessContactPerson",
        "type": "object",
        "required": [
          "title",
          "givenName",
          "familyName"
        ],
        "properties": {
          "title": {
            "type": "string"
          },
          "givenName": {
            "description": "Must be between 1 and 26 characters.",
            "type": "string"
          },
          "familyName": {
            "description": "Must be between 1 and 26 characters.",
            "type": "string"
          }
        }
      },
      "BusinessContactPerson1": {
        "title": "BusinessContactPerson",
        "description": "The contact person for the merchant",
        "type": "object",
        "required": [
          "firstName",
          "lastName",
          "title"
        ],
        "properties": {
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        }
      },
      "BusinessProfile": {
        "title": "BusinessProfile",
        "type": "object",
        "required": [
          "timeZone",
          "businessName",
          "businessType",
          "website",
          "supportSite",
          "industry",
          "taxCountry",
          "contactPerson",
          "contactEmailAddress",
          "phoneNumber",
          "address",
          "brandName",
          "cardStatementName",
          "smsSenderName",
          "verificationDocs"
        ],
        "properties": {
          "timeZone": {
            "description": "Timezone for the merchant, e.g. Australia/Sydney",
            "examples": [
              "Australia/Sydney"
            ],
            "type": "string"
          },
          "businessName": {
            "description": "Business name (as linked to ABN/ACN)",
            "type": "string"
          },
          "businessType": {
            "$ref": "#/components/schemas/BusinessType"
          },
          "companyType": {
            "$ref": "#/components/schemas/CompanyType",
            "description": "(Optional) Company type, required when businessType is company"
          },
          "website": {
            "description": "Company website",
            "type": "string"
          },
          "supportSite": {
            "description": "Company website for handling support issues",
            "type": "string"
          },
          "industry": {
            "$ref": "#/components/schemas/Industry"
          },
          "taxCountry": {
            "$ref": "#/components/schemas/Country",
            "description": "The country where the business is registered for tax purposes."
          },
          "tradingCountry": {
            "$ref": "#/components/schemas/Country",
            "description": "The country where customers of the business are making payments."
          },
          "taxId": {
            "description": "The registered tax id of the company, e.g. ABN, NZBN",
            "type": "string"
          },
          "contactPerson": {
            "$ref": "#/components/schemas/BusinessContactPerson"
          },
          "contactEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "supportEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number in E164 format, eg. +61400000000",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/BusinessAddress"
          },
          "brandName": {
            "description": "The customer facing name of your business.",
            "type": "string"
          },
          "cardStatementName": {
            "description": "The label that will appear on your customer's credit or debit card statements. Must be between 5 and 13 characters. Valid characters are letters, numbers or spaces.",
            "examples": [
              "Kates Deli"
            ],
            "type": "string"
          },
          "smsSenderName": {
            "description": "Sms Sender Name.  Must be between 3 and 11 characters. Valid characters are letters and digits.",
            "examples": [
              "KatesDeli"
            ],
            "type": "string"
          },
          "verificationDocs": {
            "$ref": "#/components/schemas/BusinessVerificationDoc"
          }
        }
      },
      "BusinessType": {
        "title": "BusinessType",
        "type": "string",
        "enum": [
          "company",
          "individual",
          "soletrader",
          "partnership",
          "trust"
        ]
      },
      "BusinessVerificationDoc": {
        "title": "BusinessVerificationDoc",
        "type": "object",
        "properties": {
          "companyFrontFileId": {
            "description": "System identifier for uploaded scan of the front of the company document",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "companyBackFileId": {
            "description": "System identifier for uploaded scan of the back of the company document",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "companyTaxIdFileId": {
            "description": "System identifier for uploaded scan of the front of the tax ID document",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "partnershipAgreementFileId": {
            "description": "System identifier for uploaded scan of the Partnership Agreement. Required if business type is partnership.",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "trustDeedFileId": {
            "description": "System identifier for uploaded scan of the Trust Deed. Required if business type is trust.",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "trustDeedAmendmentFileIds": {
            "description": "System identifiers for uploaded scans of the Trust Deed amendments. Required if business type is trust.",
            "type": "array",
            "items": {
              "examples": [
                "lfile_gMUxRceDqqOUtLtI"
              ],
              "type": "string"
            }
          }
        }
      },
      "CalculateSurchargeRequest_Vault": {
        "title": "CalculateSurchargeRequest_Vault",
        "oneOf": [
          {
            "$ref": "#/components/schemas/PaymentSurchargeRequest"
          }
        ]
      },
      "CalculateSurchargeResponse": {
        "title": "CalculateSurchargeResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/PaymentSurchargeResponse"
          }
        ]
      },
      "CancelAuthorisation": {
        "title": "CancelAuthorisation",
        "type": "object",
        "required": [
          "CancelAuthorisation"
        ],
        "properties": {
          "CancelAuthorisation": {
            "$ref": "#/components/schemas/CancelAuthorisation1"
          }
        }
      },
      "CancelAuthorisation1": {
        "title": "CancelAuthorisation",
        "description": "Cancels a pre-authorised transaction.",
        "type": "object"
      },
      "CaptureFunds": {
        "title": "CaptureFunds",
        "type": "object",
        "required": [
          "CaptureFunds"
        ],
        "properties": {
          "CaptureFunds": {
            "$ref": "#/components/schemas/CaptureFunds1"
          }
        }
      },
      "CaptureFunds1": {
        "title": "CaptureFunds",
        "description": "Capture funds from a pre-authorised transaction. Note that funds must be captured within 7 days of the original authorisation.",
        "type": "object",
        "properties": {
          "captureAmount": {
            "description": "The amount **in minor currency units** that needs capturing. Must be less than or equal to the original amount pre-authorised. If omitted, the full amount is captured.",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "CarRental": {
        "title": "CarRental",
        "type": "object",
        "required": [
          "CarRental"
        ],
        "properties": {
          "CarRental": {
            "$ref": "#/components/schemas/CarRental1"
          }
        }
      },
      "CarRental1": {
        "title": "CarRental",
        "type": "object",
        "required": [
          "dbi",
          "driverName",
          "pickUpDate",
          "pickUpLocation",
          "dropOffLocation",
          "dayCount"
        ],
        "properties": {
          "dbi": {
            "$ref": "#/components/schemas/DescriptiveBillingInformation"
          },
          "driverName": {
            "description": "Driver name between 1 and 45 alphanumeric characters long.",
            "type": "string"
          },
          "pickUpDate": {
            "description": "Pick-ip date.",
            "type": "string",
            "format": "date"
          },
          "pickUpLocation": {
            "description": "Pick-up location between 1 and 13 alphanumeric characters long.",
            "type": "string"
          },
          "dropOffLocation": {
            "description": "Drop-off location between 1 and 13 alphanumeric characters long.",
            "type": "string"
          },
          "dayCount": {
            "description": "Day count.",
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "Card": {
        "title": "Card",
        "description": "Payment method is via card.",
        "type": "object",
        "required": [
          "cardAttributes"
        ],
        "properties": {
          "cardAttributes": {
            "$ref": "#/components/schemas/CardAttributes"
          }
        }
      },
      "Card1": {
        "title": "Card",
        "description": "Card to use",
        "type": "object",
        "required": [
          "number",
          "expiryDate"
        ],
        "properties": {
          "number": {
            "description": "The card PAN digits only. Best efforts are made to remove formatting but are not guaranteed.",
            "type": "string"
          },
          "cvc": {
            "description": "The card code, often known as CVC,CVV,CID.",
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "The card expiry Month and Year"
          }
        }
      },
      "Card2": {
        "title": "Card",
        "type": "object",
        "required": [
          "Card"
        ],
        "properties": {
          "Card": {
            "$ref": "#/components/schemas/Card3"
          }
        }
      },
      "Card3": {
        "title": "Card",
        "description": "Payment method is via card.",
        "type": "object",
        "required": [
          "cardNumber"
        ],
        "properties": {
          "cardNumber": {
            "description": "The card PAN digits only. Best efforts are made to remove formatting but are not guaranteed.",
            "type": "string"
          }
        }
      },
      "Card4": {
        "title": "Card",
        "description": "**DEPRECATED:** Use generalised case (`SavedPaymentSource`) instead",
        "type": "object",
        "required": [
          "paymentSourceId"
        ],
        "properties": {
          "paymentSourceId": {
            "description": "System unique identifier for the initial payment method used for the pay plan.",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "cvc": {
            "description": "Optional CVC.",
            "type": "string"
          }
        }
      },
      "CardAttributes": {
        "title": "CardAttributes",
        "description": "The attributes of the specified card.",
        "type": "object",
        "required": [
          "funding",
          "issuer"
        ],
        "properties": {
          "currency": {
            "description": "Currency of the card.",
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/IsoCountry",
            "description": "Country of issue of the card as a ISO-3166-1 alpha-2 code."
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding",
            "description": "The type of funding of the card, eg credit."
          },
          "prepaid": {
            "description": "Whether the card is prepaid (not specified if unknown).",
            "type": "boolean"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBrand",
            "description": "The brand of the card, eg Visa."
          },
          "issuer": {
            "description": "The name of the card issuer.",
            "type": "string"
          },
          "productType": {
            "$ref": "#/components/schemas/ProductType",
            "description": "The product type of the card, if known (eg wallet payments may not know this)."
          },
          "schemeProduct": {
            "$ref": "#/components/schemas/SchemeProduct",
            "description": "The scheme product code applying to the card, if known (eg wallet payments may not know this)."
          },
          "bin": {
            "description": "The BIN of the card, if known.",
            "type": "string"
          }
        }
      },
      "CardBrand": {
        "title": "CardBrand",
        "type": "string",
        "enum": [
          "",
          "American Express",
          "MasterCard",
          "Visa",
          "Diners Club",
          "Discover",
          "UnionPay",
          "Maestro",
          "Elo",
          "Mir",
          "Hiper",
          "Hipercard",
          "Jcb",
          "Electron",
          "Uatp"
        ]
      },
      "CardBranding": {
        "title": "CardBranding",
        "type": "string",
        "enum": [
          "MasterCard",
          "Visa",
          "American Express",
          "Unknown"
        ]
      },
      "CardBranding1": {
        "title": "CardBranding",
        "type": "string",
        "enum": [
          "MasterCard",
          "Visa",
          "American Express",
          "Unknown"
        ]
      },
      "CardCreationDetailsDbiDto": {
        "title": "CardCreationDetailsDbiDto",
        "type": "object",
        "required": [
          "cardHolderName",
          "validFrom",
          "validTo",
          "metadata"
        ],
        "properties": {
          "cardHolderName": {
            "type": "string"
          },
          "emailAddress": {
            "description": "The email address of the card holder",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "The phone of the card holder, which if specified will be used for 3DS",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The transaction limit for the card - the largest amount chargeable on a single transaction."
          },
          "cardLimit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The card limit for the card - the maximum amount that can be outstanding on the card at any time."
          },
          "usage": {
            "$ref": "#/components/schemas/CardUsage",
            "description": "Mode of use of the card - defaults to single purpose"
          },
          "currencies": {
            "description": "Currencies that the card is allowed to be used for; empty list means no restrictions",
            "type": "array",
            "items": {
              "description": "ISO 4217 3 Digits Currency code",
              "type": "string"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/TransportBillingInformation"
          }
        }
      },
      "CardCreationDetailsDto": {
        "title": "CardCreationDetailsDto",
        "type": "object",
        "required": [
          "cardHolderName",
          "validFrom",
          "validTo",
          "metadata"
        ],
        "properties": {
          "cardHolderName": {
            "type": "string"
          },
          "emailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The transaction limit for the card - the largest amount chargeable on a single transaction."
          },
          "cardLimit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The card limit for the card - the maximum amount that can be outstanding on the card at any time."
          },
          "usage": {
            "$ref": "#/components/schemas/CardUsage",
            "description": "Mode of use of the card - defaults to single use"
          },
          "currencies": {
            "description": "Currencies that the card is allowed to be used for; empty list means no restrictions",
            "type": "array",
            "items": {
              "description": "ISO 4217 3 Digits Currency code",
              "type": "string"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "CardFunding": {
        "title": "CardFunding",
        "type": "string",
        "enum": [
          "credit",
          "debit",
          "chargecard",
          "prepaid",
          "deferreddebit",
          "unknown"
        ]
      },
      "CardFunding1": {
        "title": "CardFunding",
        "type": "string",
        "enum": [
          "Credit",
          "Debit",
          "Prepaid",
          "Unknown"
        ]
      },
      "CardFunding2": {
        "title": "CardFunding",
        "type": "string",
        "enum": [
          "Credit",
          "Debit",
          "Prepaid",
          "Unknown"
        ]
      },
      "CardInfo": {
        "title": "CardInfo",
        "type": "object",
        "required": [
          "cardDetails",
          "cardNetwork"
        ],
        "properties": {
          "cardDetails": {
            "type": "string"
          },
          "cardNetwork": {
            "type": "string"
          },
          "assuranceDetails": {
            "$ref": "#/components/schemas/AssuranceDetailsSpecifications"
          }
        }
      },
      "CardMethod": {
        "title": "CardMethod",
        "type": "object",
        "required": [
          "CardMethod"
        ],
        "properties": {
          "CardMethod": {
            "$ref": "#/components/schemas/CardMethod1"
          }
        }
      },
      "CardMethod1": {
        "title": "CardMethod",
        "type": "object",
        "required": [
          "number",
          "expiryDate"
        ],
        "properties": {
          "number": {
            "description": "The card PAN digits only. Best efforts are made to remove formatting but are not guaranteed.",
            "type": "string"
          },
          "cvc": {
            "description": "The card code, often known as CVC,CVV,CID.",
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          }
        }
      },
      "CardMethodResp": {
        "title": "CardMethodResp",
        "type": "object",
        "required": [
          "CardMethodResp"
        ],
        "properties": {
          "CardMethodResp": {
            "$ref": "#/components/schemas/CardMethodResp1"
          }
        }
      },
      "CardMethodResp1": {
        "title": "CardMethodResp",
        "type": "object",
        "required": [
          "country",
          "last4",
          "brand",
          "funding",
          "cardBin",
          "expMonth",
          "expYear"
        ],
        "properties": {
          "country": {
            "$ref": "#/components/schemas/IsoCountry"
          },
          "last4": {
            "type": "string"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding1"
          },
          "cardBin": {
            "type": "string"
          },
          "expMonth": {
            "type": "integer",
            "format": "int32"
          },
          "expYear": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "CardPaymentMethod": {
        "title": "CardPaymentMethod",
        "type": "object",
        "required": [
          "paymentMethodType"
        ],
        "properties": {
          "paymentMethodType": {
            "$ref": "#/components/schemas/PaymentMethodType1"
          },
          "cardBrand": {
            "type": "string"
          },
          "cardBin": {
            "type": "string"
          },
          "cardLast4": {
            "type": "string"
          },
          "cardFunding": {
            "type": "string"
          },
          "cardIssuer": {
            "type": "string"
          },
          "cardExpiryDate": {
            "type": "string"
          },
          "cardCountry": {
            "type": "string"
          },
          "cardCVCVerificationPassed": {
            "type": "boolean"
          },
          "card3DSVerificationPassed": {
            "type": "boolean"
          },
          "info3DSVerification": {
            "type": "string"
          },
          "walletType": {
            "type": "string"
          },
          "outcome3ds": {
            "$ref": "#/components/schemas/Outcome3ds"
          },
          "card3DSFlow": {
            "type": "string"
          },
          "cardStatement": {
            "type": "string"
          },
          "cardHolderName": {
            "type": "string"
          },
          "errorCode": {
            "$ref": "#/components/schemas/ErrorCode"
          },
          "errorMessage": {
            "type": "string"
          },
          "errorDetails": {
            "type": "string"
          }
        }
      },
      "CardSynonymTypeDto": {
        "title": "CardSynonymTypeDto",
        "type": "string",
        "enum": [
          "RandomPan"
        ]
      },
      "CardSynonymTypeDto1": {
        "title": "CardSynonymTypeDto",
        "oneOf": [
          {
            "$ref": "#/components/schemas/RandomPan"
          }
        ]
      },
      "CardTokenDetails": {
        "title": "CardTokenDetails",
        "type": "object",
        "required": [
          "CardTokenDetails"
        ],
        "properties": {
          "CardTokenDetails": {
            "$ref": "#/components/schemas/CardTokenDetails1"
          }
        }
      },
      "CardTokenDetails1": {
        "title": "CardTokenDetails",
        "type": "object",
        "required": [
          "bin",
          "last4",
          "expiryDate",
          "brand",
          "country",
          "funding"
        ],
        "properties": {
          "bin": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding1"
          },
          "country": {
            "$ref": "#/components/schemas/IsoCountry"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding"
          }
        }
      },
      "CardUpdateDetailsDbiDto": {
        "title": "CardUpdateDetailsDbiDto",
        "type": "object",
        "required": [
          "cardHolderName",
          "validFrom",
          "validTo",
          "metadata"
        ],
        "properties": {
          "cardHolderName": {
            "type": "string"
          },
          "emailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The transaction limit for the card - the largest amount chargeable on a single transaction."
          },
          "cardLimit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The card limit for the card - the maximum amount that can be outstanding on the card at any time."
          },
          "currencies": {
            "description": "Currencies that the card is allowed to be used for; empty list means no restrictions",
            "type": "array",
            "items": {
              "description": "ISO 4217 3 Digits Currency code",
              "type": "string"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/TransportBillingInformation"
          }
        }
      },
      "CardUpdateDetailsDto": {
        "title": "CardUpdateDetailsDto",
        "type": "object",
        "required": [
          "cardHolderName",
          "validFrom",
          "validTo",
          "metadata"
        ],
        "properties": {
          "cardHolderName": {
            "type": "string"
          },
          "emailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The transaction limit for the card - the largest amount chargeable on a single transaction."
          },
          "cardLimit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The card limit for the card - the maximum amount that can be outstanding on the card at any time."
          },
          "currencies": {
            "description": "Currencies that the card is allowed to be used for; empty list means no restrictions",
            "type": "array",
            "items": {
              "description": "ISO 4217 3 Digits Currency code",
              "type": "string"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata to be stored on the card"
          }
        }
      },
      "CardUsage": {
        "title": "CardUsage",
        "type": "string",
        "enum": [
          "Single",
          "Multiple"
        ]
      },
      "CardUser": {
        "title": "CardUser",
        "type": "object",
        "required": [
          "CardUser"
        ],
        "properties": {
          "CardUser": {
            "$ref": "#/components/schemas/CardUser1"
          }
        }
      },
      "CardUser1": {
        "title": "CardUser",
        "description": "A card user can view transactions and optionally create cards, but can't see statements.",
        "type": "object",
        "required": [
          "viewAllTransactions",
          "canCreateCards"
        ],
        "properties": {
          "viewAllTransactions": {
            "description": "Can this card user view all loan based transactions for the customer, not just ones for cards they are linked to.",
            "type": "boolean"
          },
          "canCreateCards": {
            "description": "Can this card user create their own loan-backed credit cards.",
            "type": "boolean"
          },
          "loanAccess": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoanAccess"
            }
          }
        }
      },
      "Charge": {
        "title": "Charge",
        "type": "object",
        "required": [
          "chargeId",
          "amount",
          "isSuccess",
          "createdAt"
        ],
        "properties": {
          "chargeId": {
            "description": "System unique identifier for the charge.",
            "examples": [
              "chrg_JT8KfJrw_ZyuIe5p"
            ],
            "type": "string"
          },
          "amount": {
            "description": "How much was charged **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "isSuccess": {
            "description": "Was the charge successfully captured.",
            "type": "boolean"
          },
          "instalmentNumber": {
            "description": "If this is a regular instalment charge, what instalment does it correspond to.",
            "type": "integer",
            "format": "int32"
          },
          "instalmentCharge": {
            "description": "Was this charge made as part of a scheduled instalment payment.",
            "type": "boolean"
          },
          "createdAt": {
            "description": "When the charge was created.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "CheckoutPayType": {
        "title": "CheckoutPayType",
        "description": "The payment type to be allowed in the checkout",
        "type": "string",
        "enum": [
          "payplan",
          "paycard"
        ]
      },
      "CompanyType": {
        "title": "CompanyType",
        "type": "string",
        "enum": [
          "Private",
          "Public"
        ]
      },
      "ComponentisedAddress": {
        "title": "ComponentisedAddress",
        "type": "object",
        "required": [
          "streetNumber",
          "streetName",
          "city",
          "postcode",
          "country"
        ],
        "properties": {
          "unitNumber": {
            "description": "The address unit number",
            "type": "string"
          },
          "streetNumber": {
            "description": "The address street number",
            "type": "string"
          },
          "streetName": {
            "description": "The address street name",
            "type": "string"
          },
          "streetType": {
            "description": "The address street type, eg Street or Road – not mandatory because 12 The Esplanade",
            "type": "string"
          },
          "suburb": {
            "description": "The address suburb",
            "type": "string"
          },
          "city": {
            "description": "The address city",
            "type": "string"
          },
          "postcode": {
            "description": "The address postcode",
            "type": "string"
          },
          "state": {
            "description": "The address state",
            "type": "string"
          },
          "country": {
            "description": "The address country",
            "type": "string"
          }
        }
      },
      "Confirm3DSComplete": {
        "title": "Confirm3DSComplete",
        "type": "object",
        "required": [
          "Confirm3DSComplete"
        ],
        "properties": {
          "Confirm3DSComplete": {
            "$ref": "#/components/schemas/Confirm3DSComplete1"
          }
        }
      },
      "Confirm3DSComplete1": {
        "title": "Confirm3DSComplete",
        "description": "\nWhen 3DS is required, a card based `PayOrder` call returns status code `200` with response type `ThreeDSAuthorisationRequired` containing the details needed to complete the 3DS challenge.\nUse this action to complete the pay order process after the 3DS challenge is complete.\nSee [3D-Secure Utilisation](/developer-portal/three-d-secure/) for further details.",
        "type": "object",
        "required": [
          "paymentTokenId",
          "threeDSResponse"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the payment used to pay for this order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "threeDSResponse": {
            "$ref": "#/components/schemas/ThreeDSResult"
          },
          "authoriseOnly": {
            "description": "Authorise payment only. Should be the same value as passed into the original `PayOrder` call.",
            "type": "boolean"
          }
        }
      },
      "ConsumerCustomer": {
        "title": "ConsumerCustomer",
        "type": "object",
        "required": [
          "ConsumerCustomer"
        ],
        "properties": {
          "ConsumerCustomer": {
            "$ref": "#/components/schemas/ConsumerCustomer1"
          }
        }
      },
      "ConsumerCustomer1": {
        "title": "ConsumerCustomer",
        "type": "object",
        "required": [
          "customerId",
          "merchantId",
          "isVerified",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for a merchant customer.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "System unique identifier for a merchant.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "description": "System unique identifier for a marketplace.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. If provided, must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "emailAddress": {
            "description": "Email address of the customer.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "givenName": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "middleName": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "familyName": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "isVerified": {
            "description": "Has the phone number and email address for this customer been verified to be correct.",
            "type": "boolean"
          },
          "phoneNumber": {
            "description": "Phone number of the customer.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "createdAt": {
            "description": "When the customer was first added to the system.",
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "description": "When the customer was last updated in the system.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "ConsumerCustomerKycResult": {
        "title": "ConsumerCustomerKycResult",
        "type": "object",
        "required": [
          "ConsumerCustomerKycResult"
        ],
        "properties": {
          "ConsumerCustomerKycResult": {
            "$ref": "#/components/schemas/ConsumerCustomerKycResult1"
          }
        }
      },
      "ConsumerCustomerKycResult1": {
        "title": "ConsumerCustomerKycResult",
        "type": "object",
        "required": [
          "payTypeEligibility"
        ],
        "properties": {
          "payTypeEligibility": {
            "$ref": "#/components/schemas/KycPayTypeEligibility",
            "description": "Provides the KYC status information for the customer."
          }
        }
      },
      "ConsumerMarketplaceCustomer": {
        "title": "ConsumerMarketplaceCustomer",
        "type": "object",
        "required": [
          "ConsumerMarketplaceCustomer"
        ],
        "properties": {
          "ConsumerMarketplaceCustomer": {
            "$ref": "#/components/schemas/ConsumerMarketplaceCustomer1"
          }
        }
      },
      "ConsumerMarketplaceCustomer1": {
        "title": "ConsumerMarketplaceCustomer",
        "type": "object",
        "required": [
          "marketplaceCustomerId",
          "marketplaceId",
          "isVerified",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "marketplaceCustomerId": {
            "examples": [
              "mktpcust_-fUW30ALFe23XYoW"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "givenName": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "middleName": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "familyName": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "emailAddress": {
            "description": "**Restricted field** - only included if caller has access.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "isVerified": {
            "type": "boolean"
          },
          "phoneNumber": {
            "description": "**Restricted field** - only included if caller has access.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "referenceCustomerId": {
            "type": "string"
          }
        }
      },
      "Country": {
        "title": "Country",
        "type": "string",
        "enum": [
          "AU",
          "HK",
          "NZ",
          "SG",
          "ZA",
          "US"
        ]
      },
      "CreateApplePayToken": {
        "title": "CreateApplePayToken",
        "type": "object",
        "required": [
          "CreateApplePayToken"
        ],
        "properties": {
          "CreateApplePayToken": {
            "$ref": "#/components/schemas/CreateApplePayToken1"
          }
        }
      },
      "CreateApplePayToken1": {
        "title": "CreateApplePayToken",
        "description": "Create a payment token based on an Apple Pay datagram.",
        "type": "object",
        "required": [
          "amount",
          "applePay"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "applePay": {
            "$ref": "#/components/schemas/EncryptedApplePay"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreateBankAccountToken": {
        "title": "CreateBankAccountToken",
        "type": "object",
        "required": [
          "CreateBankAccountToken"
        ],
        "properties": {
          "CreateBankAccountToken": {
            "$ref": "#/components/schemas/CreateBankAccountToken1"
          }
        }
      },
      "CreateBankAccountToken1": {
        "title": "CreateBankAccountToken",
        "description": "Create a payment token based on a bank account's details which will be charged via direct debit. Agreement has to be acknowledged and accepted.",
        "type": "object",
        "required": [
          "amount",
          "emailAddress",
          "agreementAccepted",
          "bankAccount"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "emailAddress": {
            "description": "Email address of the owner of this account.",
            "type": "string"
          },
          "agreementAccepted": {
            "description": "Customer has seen and accepted the direct debit agreement.",
            "type": "boolean"
          },
          "bankAccount": {
            "$ref": "#/components/schemas/BankAccount",
            "description": "Bank account to use"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreateConsumerCardSource": {
        "title": "CreateConsumerCardSource",
        "type": "object",
        "required": [
          "CreateConsumerCardSource"
        ],
        "properties": {
          "CreateConsumerCardSource": {
            "$ref": "#/components/schemas/CreateConsumerCardSource1"
          }
        }
      },
      "CreateConsumerCardSource1": {
        "title": "CreateConsumerCardSource",
        "description": "**DEPRECATED:** Use generalised case (`CreateSavedPaymentSource`) instead",
        "type": "object",
        "required": [
          "number",
          "cvc",
          "expiryDate"
        ],
        "properties": {
          "number": {
            "type": "string"
          },
          "cvc": {
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          }
        }
      },
      "CreateDigitalCardRequestMastercard": {
        "title": "CreateDigitalCardRequestMastercard",
        "type": "object",
        "required": [
          "CreateDigitalCardRequestMastercard"
        ],
        "properties": {
          "CreateDigitalCardRequestMastercard": {
            "$ref": "#/components/schemas/CreateDigitalCardRequestMastercard1"
          }
        }
      },
      "CreateDigitalCardRequestMastercard1": {
        "title": "CreateDigitalCardRequestMastercard",
        "type": "object",
        "required": [
          "loanId",
          "details"
        ],
        "properties": {
          "loanId": {
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/CardCreationDetailsDto"
          }
        }
      },
      "CreateDigitalCardRequestMastercardWithDbi": {
        "title": "CreateDigitalCardRequestMastercardWithDbi",
        "type": "object",
        "required": [
          "CreateDigitalCardRequestMastercardWithDbi"
        ],
        "properties": {
          "CreateDigitalCardRequestMastercardWithDbi": {
            "$ref": "#/components/schemas/CreateDigitalCardRequestMastercardWithDbi1"
          }
        }
      },
      "CreateDigitalCardRequestMastercardWithDbi1": {
        "title": "CreateDigitalCardRequestMastercardWithDbi",
        "type": "object",
        "required": [
          "loanId",
          "details"
        ],
        "properties": {
          "loanId": {
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/CardCreationDetailsDbiDto"
          }
        }
      },
      "CreateDigitalCardRequestUatp": {
        "title": "CreateDigitalCardRequestUatp",
        "type": "object",
        "required": [
          "CreateDigitalCardRequestUatp"
        ],
        "properties": {
          "CreateDigitalCardRequestUatp": {
            "$ref": "#/components/schemas/CreateDigitalCardRequestUatp1"
          }
        }
      },
      "CreateDigitalCardRequestUatp1": {
        "title": "CreateDigitalCardRequestUatp",
        "type": "object",
        "required": [
          "loanId",
          "product",
          "country",
          "details"
        ],
        "properties": {
          "loanId": {
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          },
          "product": {
            "$ref": "#/components/schemas/SppUatpCardProduct"
          },
          "country": {
            "$ref": "#/components/schemas/IsoCountry"
          },
          "details": {
            "$ref": "#/components/schemas/CardCreationDetailsDto"
          }
        }
      },
      "CreateDigitalCardResponseMastercard": {
        "title": "CreateDigitalCardResponseMastercard",
        "type": "object",
        "required": [
          "CreateDigitalCardResponseMastercard"
        ],
        "properties": {
          "CreateDigitalCardResponseMastercard": {
            "$ref": "#/components/schemas/CreateDigitalCardResponseMastercard1"
          }
        }
      },
      "CreateDigitalCardResponseMastercard1": {
        "title": "CreateDigitalCardResponseMastercard",
        "type": "object",
        "required": [
          "details"
        ],
        "properties": {
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "CreateDigitalCardResponseUatp": {
        "title": "CreateDigitalCardResponseUatp",
        "type": "object",
        "required": [
          "CreateDigitalCardResponseUatp"
        ],
        "properties": {
          "CreateDigitalCardResponseUatp": {
            "$ref": "#/components/schemas/CreateDigitalCardResponseUatp1"
          }
        }
      },
      "CreateDigitalCardResponseUatp1": {
        "title": "CreateDigitalCardResponseUatp",
        "type": "object",
        "required": [
          "details"
        ],
        "properties": {
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "CreateGooglePayToken": {
        "title": "CreateGooglePayToken",
        "type": "object",
        "required": [
          "CreateGooglePayToken"
        ],
        "properties": {
          "CreateGooglePayToken": {
            "$ref": "#/components/schemas/CreateGooglePayToken1"
          }
        }
      },
      "CreateGooglePayToken1": {
        "title": "CreateGooglePayToken",
        "description": "Create a payment token based on a Google Pay datagram.",
        "type": "object",
        "required": [
          "amount",
          "googlePay"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "googlePay": {
            "$ref": "#/components/schemas/EncryptedGooglePay"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreateManualCardToken": {
        "title": "CreateManualCardToken",
        "type": "object",
        "required": [
          "CreateManualCardToken"
        ],
        "properties": {
          "CreateManualCardToken": {
            "$ref": "#/components/schemas/CreateManualCardToken1"
          }
        }
      },
      "CreateManualCardToken1": {
        "title": "CreateManualCardToken",
        "description": "Create a payment token based on a card provided manually. For integrators who wish to call this action directly, you must be PCI certified since you will be handling raw card details.",
        "type": "object",
        "required": [
          "amount",
          "card"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "card": {
            "$ref": "#/components/schemas/Card1"
          },
          "threeDsSessionId": {
            "description": "3DS session id, optional as it is only used in extended 3DS scenarios such as Cardinal 3DS2, which performs an extended device data check cycle returning a session id that is passed to the backend as part of the payment token data",
            "type": "string"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreateManualPayoutRequest": {
        "title": "CreateManualPayoutRequest",
        "type": "object",
        "required": [
          "currency",
          "payoutAmount",
          "statementDescriptor"
        ],
        "properties": {
          "currency": {
            "description": "The currency of the payout as a 3 letter ISO code. Currently foreign exchange is not supported. The currency must match the trading currency of the merchant.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "payoutAmount": {
            "description": "The amount credited towards the payout **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "externalAccountId": {
            "description": "System unique identifier for a bank account to credit. If not specified, the merchant's primary bank account will be used.",
            "examples": [
              "xacc_sWY5yPi9OQH31jMA"
            ],
            "type": "string"
          },
          "statementDescriptor": {
            "description": "Information about the payout that will appear on the customer's bank statement.",
            "type": "string"
          },
          "paymentChannels": {
            "description": "The payment channels to use for the payout. If more than one is specified, they will be attempted in the order given.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentChannel"
            }
          },
          "feePayingMerchantId": {
            "description": "System unique identifier for the merchant to charge the payout fee to. The merchant receiving the payout is used by default.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          }
        }
      },
      "CreateMarketplaceApiKey": {
        "title": "CreateMarketplaceApiKey",
        "type": "object",
        "required": [
          "CreateMarketplaceApiKey"
        ],
        "properties": {
          "CreateMarketplaceApiKey": {
            "$ref": "#/components/schemas/CreateMarketplaceApiKey1"
          }
        }
      },
      "CreateMarketplaceApiKey1": {
        "title": "CreateMarketplaceApiKey",
        "type": "object",
        "required": [
          "description",
          "marketplaceId"
        ],
        "properties": {
          "description": {
            "description": "Description for the new service token",
            "type": "string"
          },
          "marketplaceId": {
            "description": "Identifier for the marketplace this token will be associated with",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "expiresAt": {
            "description": "Expiration time for the token. If not provided, token will not expire.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "CreateMarketplaceMerchantRequest": {
        "title": "CreateMarketplaceMerchantRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateServiceProviderSubmerchant"
          },
          {
            "$ref": "#/components/schemas/CreateStandardSubmerchant"
          }
        ]
      },
      "CreateMerchantSecretToken": {
        "title": "CreateMerchantSecretToken",
        "type": "object",
        "required": [
          "CreateMerchantSecretToken"
        ],
        "properties": {
          "CreateMerchantSecretToken": {
            "$ref": "#/components/schemas/CreateMerchantSecretToken1"
          }
        }
      },
      "CreateMerchantSecretToken1": {
        "title": "CreateMerchantSecretToken",
        "type": "object",
        "required": [
          "description",
          "merchantId"
        ],
        "properties": {
          "description": {
            "description": "Description for the new service token",
            "type": "string"
          },
          "merchantId": {
            "description": "Identifier for the merchant this token will be associated with",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "expiresAt": {
            "description": "Expiration time for the token. If not provided, token will not expire.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "CreateOnlineOrder": {
        "title": "CreateOnlineOrder",
        "type": "object",
        "required": [
          "CreateOnlineOrder"
        ],
        "properties": {
          "CreateOnlineOrder": {
            "$ref": "#/components/schemas/CreateOnlineOrder1"
          }
        }
      },
      "CreateOnlineOrder1": {
        "title": "CreateOnlineOrder",
        "description": "Represents an order processed in real-time, typically on an e-commerce site.",
        "type": "object",
        "required": [
          "referenceOrderId",
          "amount"
        ],
        "properties": {
          "referenceOrderId": {
            "description": "A reference provided by the merchant to identify this order, such as an order number.",
            "examples": [
              "ORD-12411"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The order amount **in minor currency units** prior to any applicable surcharges"
          },
          "customerEmailAddress": {
            "description": "Optional email address of the customer",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "customerPhoneNumber": {
            "description": "Optional phone number of the customer.",
            "type": "string"
          },
          "description": {
            "description": "A free text description of the order",
            "type": "string"
          },
          "items": {
            "description": "A list of line items included in the order",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Item"
            }
          },
          "discountAmount": {
            "description": "Optional discount applied to order **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "shipping": {
            "$ref": "#/components/schemas/Shipping",
            "description": "Optional shipping address for the order."
          },
          "billing": {
            "$ref": "#/components/schemas/Billing"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Merchant specific additional data associated with this order."
          },
          "parentTransactionId": {
            "$ref": "#/components/schemas/ParentTransactionId",
            "description": "Is this transaction derived from or linked to another Transaction."
          },
          "settlementConfiguration": {
            "$ref": "#/components/schemas/SettlementConfiguration",
            "description": "For merchants with multiple settlement configurations, this field can be used to specify the desired settlement configuration for this order."
          }
        }
      },
      "CreateOrderRequest": {
        "title": "CreateOrderRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateOnlineOrder"
          },
          {
            "$ref": "#/components/schemas/CreatePayByLinkOrder"
          }
        ]
      },
      "CreateOrderResponse": {
        "title": "CreateOrderResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/OnlineOrder"
          },
          {
            "$ref": "#/components/schemas/PayByLinkOrder"
          }
        ]
      },
      "CreateOrganisationCardSource": {
        "title": "CreateOrganisationCardSource",
        "type": "object",
        "required": [
          "CreateOrganisationCardSource"
        ],
        "properties": {
          "CreateOrganisationCardSource": {
            "$ref": "#/components/schemas/CreateOrganisationCardSource1"
          }
        }
      },
      "CreateOrganisationCardSource1": {
        "title": "CreateOrganisationCardSource",
        "description": "**DEPRECATED:** Use generalised case (`CreateSavedPaymentSource`) instead",
        "type": "object",
        "required": [
          "number",
          "cvc",
          "expiryDate",
          "cardUsageScope"
        ],
        "properties": {
          "number": {
            "type": "string"
          },
          "cvc": {
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "cardUsageScope": {
            "$ref": "#/components/schemas/SourceUsageScope"
          }
        }
      },
      "CreatePayByLinkOrder": {
        "title": "CreatePayByLinkOrder",
        "type": "object",
        "required": [
          "CreatePayByLinkOrder"
        ],
        "properties": {
          "CreatePayByLinkOrder": {
            "$ref": "#/components/schemas/CreatePayByLinkOrder1"
          }
        }
      },
      "CreatePayByLinkOrder1": {
        "title": "CreatePayByLinkOrder",
        "description": "Represents an order where a link is sent to the customer via email or SMS to be completed asynchronously at some future point. When the customer clicks on the link to complete the order, they are shown a 'virtual terminal' in their browser. This behaves similarly to the checkout, enabling the customer to provide payment details and complete the purchase.",
        "type": "object",
        "required": [
          "referenceOrderId",
          "amount"
        ],
        "properties": {
          "referenceOrderId": {
            "description": "A reference provided by the merchant to identify this order, such as an order number.",
            "examples": [
              "ORD-12411"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The order amount **in minor currency units** prior to any applicable surcharges"
          },
          "paymentTypeAmounts": {
            "description": "Optional array of amounts for each payment type, used as override for the `amount` field",
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/PaymentTypeAmount"
            }
          },
          "customerEmailAddress": {
            "description": "Optional email address of the customer",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "customerPhoneNumber": {
            "description": "Optional phone number of the customer. Note, this must be in E164 format",
            "type": "string"
          },
          "description": {
            "description": "A free text description of the order",
            "type": "string"
          },
          "items": {
            "description": "A list of line items included in the order",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Item"
            }
          },
          "discountAmount": {
            "description": "Optional discount applied to order **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "shipping": {
            "$ref": "#/components/schemas/Shipping",
            "description": "Optional shipping address for the order."
          },
          "billing": {
            "$ref": "#/components/schemas/Billing"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Merchant specific additional data associated with this order."
          },
          "settlementConfiguration": {
            "$ref": "#/components/schemas/SettlementConfiguration",
            "description": "For merchants with multiple settlement configurations, this field can be used to specify the desired settlement configuration for this order."
          },
          "taxIncluded": {
            "type": "boolean"
          },
          "taxIncludedAmountOverride": {
            "description": "Overrides the tax amount to a specific value **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "request3DSOnPayment": {
            "description": "Whether to request 3DS to be performed when paying for the order. Defaults to `false`",
            "type": "boolean"
          },
          "sendPaymentLinkSms": {
            "description": "Whether to send a payment link via SMS to the customer. Defaults to `false`",
            "type": "boolean"
          },
          "sendPaymentLinkEmail": {
            "description": "Whether to send a payment link via email to the customer. Defaults to `false`",
            "type": "boolean"
          },
          "sendReceiptEmail": {
            "description": "Whether to send a receipt via email to the customer. Defaults to `false`",
            "type": "boolean"
          },
          "parentTransactionId": {
            "$ref": "#/components/schemas/ParentTransactionId",
            "description": "Is this transaction derived from or linked to another Transaction."
          }
        }
      },
      "CreatePayPlanOfferRequest": {
        "title": "CreatePayPlanOfferRequest",
        "type": "object",
        "required": [
          "amount",
          "payPlanVariant"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The full plan amount"
          },
          "initialPayment": {
            "description": "An optional amount that the customer will pay up front **in minor currency units** (e.g. cents for AUD)",
            "type": "integer",
            "format": "int64"
          },
          "payPlanVariant": {
            "$ref": "#/components/schemas/PayPlanVariant",
            "description": "The variant of the plan to construct. This implies the number of instalments; the minimum initialPayment expected; and the frequency of payments (e.g. fortnightly, weekly, etc.)"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "An optional data structure including additional customer data that could influence the offer outcome. Only used if agreed up front between the payment system and the merchant. Independent from metadata provided during order creation."
          }
        }
      },
      "CreatePayPlanOfferResponse": {
        "title": "CreatePayPlanOfferResponse",
        "type": "object",
        "required": [
          "offerDetails",
          "offerVerificationToken"
        ],
        "properties": {
          "offerDetails": {
            "$ref": "#/components/schemas/OfferDetails"
          },
          "offerVerificationToken": {
            "description": "Tamper detection digital signature",
            "type": "string"
          },
          "message": {
            "description": "An explanation message that can be presented to the customer",
            "type": "string"
          }
        }
      },
      "CreatePayPlanRequest_Vault": {
        "title": "CreatePayPlanRequest_Vault",
        "type": "object",
        "required": [
          "termsAndConditionsAccepted",
          "offerDetails",
          "offerVerificationToken",
          "paymentSource"
        ],
        "properties": {
          "termsAndConditionsAccepted": {
            "description": "Has the customer accepted the terms and conditions of the pay plan",
            "type": "boolean"
          },
          "offerDetails": {
            "$ref": "#/components/schemas/OfferDetails"
          },
          "offerVerificationToken": {
            "description": "Tamper detection digital signature",
            "type": "string"
          },
          "paymentSource": {
            "$ref": "#/components/schemas/PaymentSource"
          },
          "threeDsSessionId": {
            "description": "3DS session id, optional as it is only used in extended 3DS scenarios such as Cardinal 3DS2, which performs an extended device data check cycle returning a session id that is passed to the backend as part of the payment token data",
            "type": "string"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreatePayPlanResponse": {
        "title": "CreatePayPlanResponse",
        "type": "object",
        "required": [
          "payPlan",
          "paymentTokenId"
        ],
        "properties": {
          "payPlan": {
            "$ref": "#/components/schemas/PayPlanResponse",
            "description": "Details of the newly created pay plan"
          },
          "paymentTokenId": {
            "description": "Payment token representing this pay plan used to pay for an order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          }
        }
      },
      "CreatePayToToken": {
        "title": "CreatePayToToken",
        "type": "object",
        "required": [
          "CreatePayToToken"
        ],
        "properties": {
          "CreatePayToToken": {
            "$ref": "#/components/schemas/CreatePayToToken1"
          }
        }
      },
      "CreatePayToToken1": {
        "title": "CreatePayToToken",
        "description": "Create a payment token based on a previouly accepted single-use PayTo agreement.",
        "type": "object",
        "required": [
          "amount",
          "agreementToken"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "agreementToken": {
            "description": "Token representing an active PayTo agreement",
            "type": "string"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreatePaymentSourceRequest_Vault": {
        "title": "CreatePaymentSourceRequest_Vault",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateConsumerCardSource"
          },
          {
            "$ref": "#/components/schemas/CreateOrganisationCardSource"
          },
          {
            "$ref": "#/components/schemas/CreateSavedPaymentSource"
          },
          {
            "$ref": "#/components/schemas/CreateTemporaryCardSource"
          }
        ]
      },
      "CreatePaymentTokenRequest_Vault": {
        "title": "CreatePaymentTokenRequest_Vault",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateApplePayToken"
          },
          {
            "$ref": "#/components/schemas/CreateBankAccountToken"
          },
          {
            "$ref": "#/components/schemas/CreateGooglePayToken"
          },
          {
            "$ref": "#/components/schemas/CreateManualCardToken"
          },
          {
            "$ref": "#/components/schemas/CreatePayToToken"
          },
          {
            "$ref": "#/components/schemas/CreateSavedCardToken"
          },
          {
            "$ref": "#/components/schemas/CreateSavedPaymentSourceToken"
          }
        ]
      },
      "CreateRefund": {
        "title": "CreateRefund",
        "type": "object",
        "required": [
          "CreateRefund"
        ],
        "properties": {
          "CreateRefund": {
            "$ref": "#/components/schemas/CreateRefund1"
          }
        }
      },
      "CreateRefund1": {
        "title": "CreateRefund",
        "description": "\nRefund a customer the given amount for the order associated with this transaction. Multiple partial refunds may be made against\na transaction as long as the total refund amount is less than or equal to the original amount of the transaction.\n\nFor pay in full transactions, this will trigger a reversal of funds on the payment source, typically a card,\nthe customer used for the purchase. This may take 2 to 3 business days before the refund is reflected in the customer's account balance,\ndepending on the financial institution they use.\n\nFor pay plan transactions, the refund amount is first deducted from the outstanding loan amount. The customer will receive a reversal\nof funds only if the refund amount is greater than the outstanding loan amount, and if so, only for the difference.\n",
        "type": "object",
        "required": [
          "refundAmount"
        ],
        "properties": {
          "refundAmount": {
            "description": "The amount **in minor currency units** of the transaction currency that needs refunding. Must be less than or equal to the transaction amount minus any previous refunds or transfers.",
            "type": "integer",
            "format": "int64"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "This can be used to associate any metadata to this refund."
          }
        }
      },
      "CreateSavedCardToken": {
        "title": "CreateSavedCardToken",
        "type": "object",
        "required": [
          "CreateSavedCardToken"
        ],
        "properties": {
          "CreateSavedCardToken": {
            "$ref": "#/components/schemas/CreateSavedCardToken1"
          }
        }
      },
      "CreateSavedCardToken1": {
        "title": "CreateSavedCardToken",
        "description": "**DEPRECATED:** Use generalised case (`CreateSavedPaymentSourceToken`) instead",
        "type": "object",
        "required": [
          "amount",
          "cardPaymentSourceId"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "cardPaymentSourceId": {
            "description": "Reference to a saved card",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "cvc": {
            "description": "Tokenised CVC for the card",
            "type": "string"
          },
          "threeDsSessionId": {
            "description": "3DS session id, optional as it is only used in extended 3DS scenarios such as Cardinal 3DS2, which performs an extended device data check cycle returning a session id that is passed to the backend as part of the payment token data",
            "type": "string"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreateSavedPaymentSource": {
        "title": "CreateSavedPaymentSource",
        "type": "object",
        "required": [
          "CreateSavedPaymentSource"
        ],
        "properties": {
          "CreateSavedPaymentSource": {
            "$ref": "#/components/schemas/CreateSavedPaymentSource1"
          }
        }
      },
      "CreateSavedPaymentSource1": {
        "title": "CreateSavedPaymentSource",
        "description": "Creates a payment source based on a specified method saved against a B2C consumer customer or according to the given B2B usage scope or for billing purposes.",
        "type": "object",
        "required": [
          "sourceMethod"
        ],
        "properties": {
          "sourceMethod": {
            "$ref": "#/components/schemas/PaymentSourceMethod"
          },
          "usageScope": {
            "$ref": "#/components/schemas/PaymentSourceUsageScope",
            "description": "\nUsed to determine the context of a payment sources. Should be `null` for consumer customers.\n\n* **ScopeOrganisation**  - For B2B customers, a payment source saved with organisation scope is available to\n                           _all_ delegates of the organisation represented by the customer.\n* **ScopeDelegate**      - For B2B customers, a payment source saved with delegate scope is _only_ available to\n                           the delegate who added the payment source.\n* **ScopeBilling**       - Indicates a payment source that can be used to automatically pay fee invoices for\n                           merchants set up for gross settlement. Adding a new billing payment source will automatically\n                           configure that as the default payment source for fee invoices going forward.\n"
          }
        }
      },
      "CreateSavedPaymentSourceToken": {
        "title": "CreateSavedPaymentSourceToken",
        "type": "object",
        "required": [
          "CreateSavedPaymentSourceToken"
        ],
        "properties": {
          "CreateSavedPaymentSourceToken": {
            "$ref": "#/components/schemas/CreateSavedPaymentSourceToken1"
          }
        }
      },
      "CreateSavedPaymentSourceToken1": {
        "title": "CreateSavedPaymentSourceToken",
        "description": "Create a payment token based on a saved payment source. This can be a temporary anonymous source or a payment source saved against a customer.",
        "type": "object",
        "required": [
          "amount",
          "paymentSourceId"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The amount and currency of the payment"
          },
          "paymentSourceId": {
            "description": "Reference to a saved card",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "cvc": {
            "description": "Tokenised CVC for the card",
            "type": "string"
          },
          "threeDsSessionId": {
            "description": "3DS session id, optional as it is only used in extended 3DS scenarios such as Cardinal 3DS2, which performs an extended device data check cycle returning a session id that is passed to the backend as part of the payment token data",
            "type": "string"
          },
          "surchargeRequirement": {
            "$ref": "#/components/schemas/SurchargeRequirement"
          }
        }
      },
      "CreateServiceProviderSubmerchant": {
        "title": "CreateServiceProviderSubmerchant",
        "type": "object",
        "required": [
          "CreateServiceProviderSubmerchant"
        ],
        "properties": {
          "CreateServiceProviderSubmerchant": {
            "$ref": "#/components/schemas/CreateServiceProviderSubmerchant1"
          }
        }
      },
      "CreateServiceProviderSubmerchant1": {
        "title": "CreateServiceProviderSubmerchant",
        "description": "Request associated with the creation of a skeleton sub-merchant without full eCommerce due diligence requirements",
        "type": "object",
        "required": [
          "referenceMerchantId",
          "contactEmailAddress",
          "businessName",
          "taxCountry",
          "businessType",
          "taxId",
          "bankAccountName",
          "bankAccountNumber",
          "bankCountry",
          "bankCurrency",
          "bankRoutingNumber"
        ],
        "properties": {
          "referenceMerchantId": {
            "description": "A unique string for this merchant, such as your primary key; a create call with a non-null `referenceMerchantId` value that already exists for your marketplace will be rejected",
            "type": "string"
          },
          "contactEmailAddress": {
            "description": "Used for authenticating into the Limepay merchant dashboard",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "businessName": {
            "description": "Business name (as linked to ABN/ACN)",
            "type": "string"
          },
          "taxCountry": {
            "description": "ISO-3166 two-letter country code for where the merchant is a tax resident.",
            "examples": [
              "AU"
            ],
            "type": "string",
            "maxLength": 2,
            "minLength": 2
          },
          "businessType": {
            "$ref": "#/components/schemas/BusinessType",
            "description": "The business type for the merchant"
          },
          "companyType": {
            "$ref": "#/components/schemas/CompanyType",
            "description": "The company type for the merchant"
          },
          "industry": {
            "$ref": "#/components/schemas/Industry",
            "description": "The industry for the merchant"
          },
          "taxId": {
            "description": "The tax id (e.g. ABN or NZBN) for the merchant",
            "type": "string"
          },
          "contactPerson": {
            "$ref": "#/components/schemas/BusinessContactPerson1"
          },
          "phoneNumber": {
            "description": "Phone number associated with the merchant in E164 format, eg. +61400000000",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/BusinessAddress1",
            "description": "The address for the merchant"
          },
          "bankName": {
            "description": "The bank name for the merchant",
            "type": "string"
          },
          "bankAccountName": {
            "description": "The bank account name for the merchant",
            "type": "string"
          },
          "bankAccountNumber": {
            "description": "The bank account number for the merchant",
            "type": "string"
          },
          "bankCountry": {
            "description": "The bank country for the merchant",
            "type": "string"
          },
          "bankCurrency": {
            "description": "The bank currency for the merchant",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "bankRoutingNumber": {
            "description": "The Australian equivalent to routing number is the bank state branch, or BSB, number",
            "type": "string"
          },
          "bankReferenceAccountId": {
            "description": "An optional reference provided by the merchant to identify the bank account. Must be unique for the given merchant.",
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Additional use case data specific to individual marketplaces or target industries and applications"
          },
          "requesterId": {
            "description": "An optional identifier of the requester. Required to perform Bank Account Validation",
            "type": "string"
          },
          "payoutDefaultStatementDescriptor": {
            "description": "Default value to use for the statement descriptor on merchant payouts.",
            "type": "string"
          }
        }
      },
      "CreateServiceTokenRequest": {
        "title": "CreateServiceTokenRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateMarketplaceApiKey"
          },
          {
            "$ref": "#/components/schemas/CreateMerchantSecretToken"
          }
        ]
      },
      "CreateStandardSubmerchant": {
        "title": "CreateStandardSubmerchant",
        "type": "object",
        "required": [
          "CreateStandardSubmerchant"
        ],
        "properties": {
          "CreateStandardSubmerchant": {
            "$ref": "#/components/schemas/CreateStandardSubmerchant1"
          }
        }
      },
      "CreateStandardSubmerchant1": {
        "title": "CreateStandardSubmerchant",
        "description": "Request data associated with the creation of a standard sub-merchant of a marketplace",
        "type": "object",
        "required": [
          "termsAndConditionsAccepted",
          "readableIdentifier",
          "contactEmailAddress",
          "businessName",
          "taxCountry"
        ],
        "properties": {
          "termsAndConditionsAccepted": {
            "description": "Has the merchant accepted the April terms and conditions",
            "type": "boolean"
          },
          "referenceMerchantId": {
            "description": "A unique string for this merchant, such as your primary key; a create call with a non-null `referenceMerchantId` value that already exists for your marketplace will be rejected",
            "type": "string"
          },
          "readableIdentifier": {
            "description": "Unique URL used for dashboards. Must be 4-255 characters, lowercase, alphanumeric without any special characters such as ! @ # & ( ) – [ ] : ; ‘, ? /.",
            "examples": [
              "mybusiness"
            ],
            "type": "string",
            "maxLength": 255,
            "minLength": 4,
            "pattern": "[a-z0-9]{4,255}"
          },
          "contactEmailAddress": {
            "description": "Email address associated with the merchant",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "businessName": {
            "description": "Business name (as linked to official business registration ids such as ABN/ACN or NZBN)",
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "taxCountry": {
            "description": "ISO-3166 two-letter country code for where the merchant is a tax resident.",
            "examples": [
              "AU"
            ],
            "type": "string",
            "maxLength": 2,
            "minLength": 2
          },
          "tradingCountry": {
            "description": "Optional ISO-3166 two-letter country code for where the merchant is accepting payments. Only required if different from tax country.",
            "examples": [
              "NZ"
            ],
            "type": "string",
            "maxLength": 2,
            "minLength": 2
          },
          "payoutDefaultStatementDescriptor": {
            "description": "Default value to use for the statement descriptor on merchant payouts.",
            "type": "string"
          }
        }
      },
      "CreateSynonymsForDigitalCardsRequest": {
        "title": "CreateSynonymsForDigitalCardsRequest",
        "type": "object",
        "required": [
          "CreateSynonymsForDigitalCardsRequest"
        ],
        "properties": {
          "CreateSynonymsForDigitalCardsRequest": {
            "$ref": "#/components/schemas/CreateSynonymsForDigitalCardsRequest1"
          }
        }
      },
      "CreateSynonymsForDigitalCardsRequest1": {
        "title": "CreateSynonymsForDigitalCardsRequest",
        "type": "object",
        "required": [
          "digitalCardReferences",
          "cardSynonymType"
        ],
        "properties": {
          "digitalCardReferences": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/DigitalCardReferenceDto_Vault"
            }
          },
          "cardSynonymType": {
            "$ref": "#/components/schemas/CardSynonymTypeDto1"
          }
        }
      },
      "CreateSynonymsForDigitalCardsResponse": {
        "title": "CreateSynonymsForDigitalCardsResponse",
        "type": "object",
        "required": [
          "CreateSynonymsForDigitalCardsResponse"
        ],
        "properties": {
          "CreateSynonymsForDigitalCardsResponse": {
            "$ref": "#/components/schemas/CreateSynonymsForDigitalCardsResponse1"
          }
        }
      },
      "CreateSynonymsForDigitalCardsResponse1": {
        "title": "CreateSynonymsForDigitalCardsResponse",
        "type": "object",
        "required": [
          "synonyms"
        ],
        "properties": {
          "synonyms": {
            "type": "array",
            "minItems": 1,
            "items": {
              "type": "string"
            }
          }
        }
      },
      "CreateTemporaryCardSource": {
        "title": "CreateTemporaryCardSource",
        "type": "object",
        "required": [
          "CreateTemporaryCardSource"
        ],
        "properties": {
          "CreateTemporaryCardSource": {
            "$ref": "#/components/schemas/CreateTemporaryCardSource1"
          }
        }
      },
      "CreateTemporaryCardSource1": {
        "title": "CreateTemporaryCardSource",
        "description": "\nCreates a _temporary_ payment source based on a card not associated with any customer. This payment source can only be used for pay in full payments and is valid for 10 minutes from time of creation.\nThis is useful if you don't know the exact payment amount at the time of capturing the card. An alternative to using a\ntemporary card source if you know the payment amount, is to [create a payment token](/openapi/april-public/payment-tokens/createpaymenttoken) using a manual card.\n",
        "type": "object",
        "required": [
          "number",
          "expiryDate"
        ],
        "properties": {
          "number": {
            "description": "The card PAN digits only. Best efforts are made to remove formatting but are not guaranteed.",
            "type": "string"
          },
          "cvc": {
            "description": "The card code, often known as CVC,CVV,CID.",
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          }
        }
      },
      "CreateWebhookMarketplaceSubscription": {
        "title": "CreateWebhookMarketplaceSubscription",
        "type": "object",
        "required": [
          "CreateWebhookMarketplaceSubscription"
        ],
        "properties": {
          "CreateWebhookMarketplaceSubscription": {
            "$ref": "#/components/schemas/CreateWebhookMarketplaceSubscription1"
          }
        }
      },
      "CreateWebhookMarketplaceSubscription1": {
        "title": "CreateWebhookMarketplaceSubscription",
        "type": "object",
        "required": [
          "url"
        ],
        "properties": {
          "url": {
            "description": "Destination endpoint that will be called via an HTTP POST on new events. Protocol must be https",
            "examples": [
              "https://api.myservice.io/events"
            ],
            "type": "string"
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            }
          },
          "description": {
            "description": "An optional description indicating what the webhook is used for.",
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Optional metadata to include in the payload of all webhooks generated by this subscription."
          }
        }
      },
      "CreateWebhookMerchantSubscription": {
        "title": "CreateWebhookMerchantSubscription",
        "type": "object",
        "required": [
          "CreateWebhookMerchantSubscription"
        ],
        "properties": {
          "CreateWebhookMerchantSubscription": {
            "$ref": "#/components/schemas/CreateWebhookMerchantSubscription1"
          }
        }
      },
      "CreateWebhookMerchantSubscription1": {
        "title": "CreateWebhookMerchantSubscription",
        "type": "object",
        "required": [
          "url"
        ],
        "properties": {
          "url": {
            "description": "Destination endpoint that will be called via an HTTP POST on new events. Protocol must be https",
            "examples": [
              "https://api.myservice.io/events"
            ],
            "type": "string"
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            }
          },
          "description": {
            "description": "An optional description indicating what the webhook is used for.",
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Optional metadata to include in the payload of all webhooks generated by this subscription."
          }
        }
      },
      "CreateWebhookSubscriptionRequest": {
        "title": "CreateWebhookSubscriptionRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CreateWebhookMarketplaceSubscription"
          },
          {
            "$ref": "#/components/schemas/CreateWebhookMerchantSubscription"
          }
        ]
      },
      "CreditAppliedToNewStatement": {
        "title": "CreditAppliedToNewStatement",
        "type": "object",
        "required": [
          "timestamp",
          "amount",
          "user",
          "paidStatementId"
        ],
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          },
          "user": {
            "type": "string"
          },
          "paidStatementId": {
            "examples": [
              "lstmt_dY_VYlYOQ5XP4zJn"
            ],
            "type": "string"
          }
        }
      },
      "CurrencyAmount": {
        "title": "CurrencyAmount",
        "type": "object",
        "required": [
          "minorCurrencyUnits",
          "currency"
        ],
        "properties": {
          "minorCurrencyUnits": {
            "description": "The amount in minor currency units (e.g. cents for AUD).",
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "description": "The currency of the given amount as a 3 letter ISO code.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          }
        }
      },
      "CustBusinessProfile": {
        "title": "CustBusinessProfile",
        "type": "object",
        "required": [
          "timeZone",
          "businessName",
          "businessType",
          "website",
          "supportSite",
          "industry",
          "taxCountry",
          "taxId",
          "contactPerson",
          "contactEmailAddress",
          "phoneNumber",
          "address",
          "brandName"
        ],
        "properties": {
          "timeZone": {
            "description": "Timezone for the merchant, e.g. Australia/Sydney",
            "examples": [
              "Australia/Sydney"
            ],
            "type": "string"
          },
          "businessName": {
            "description": "Business name (as linked to ABN/ACN)",
            "type": "string"
          },
          "businessType": {
            "$ref": "#/components/schemas/BusinessType"
          },
          "companyType": {
            "$ref": "#/components/schemas/CompanyType",
            "description": "(Optional) Company type, required when businessType is company"
          },
          "website": {
            "description": "Company website",
            "type": "string"
          },
          "supportSite": {
            "description": "Company website for handling support issues",
            "type": "string"
          },
          "industry": {
            "$ref": "#/components/schemas/Industry"
          },
          "taxCountry": {
            "$ref": "#/components/schemas/Country",
            "description": "The country where the business is registered for tax purposes."
          },
          "tradingCountry": {
            "$ref": "#/components/schemas/Country",
            "description": "The country where customers of the business are making payments."
          },
          "taxId": {
            "description": "The registered tax id of the company, e.g. ABN, NZBN",
            "type": "string"
          },
          "contactPerson": {
            "$ref": "#/components/schemas/BusinessContactPerson"
          },
          "contactEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "supportEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number in E164 format, eg. +61400000000",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/BusinessAddress"
          },
          "brandName": {
            "description": "The customer facing name of your business.",
            "type": "string"
          }
        }
      },
      "CustomerAttributes": {
        "title": "CustomerAttributes",
        "type": "object",
        "required": [
          "customerId"
        ],
        "properties": {
          "customerId": {
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "position": {
            "type": "string"
          },
          "loanRole": {
            "$ref": "#/components/schemas/LoanRole"
          }
        }
      },
      "CustomerAuthenticationResult": {
        "title": "CustomerAuthenticationResult",
        "type": "object",
        "required": [
          "customerId",
          "customToken"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for the customer",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "customerDelegateId": {
            "description": "System unique identifier for the customer delegate",
            "examples": [
              "custd_fA10wWw5-8RVL2EC"
            ],
            "type": "string"
          },
          "customToken": {
            "description": "A custom token that can be provided to the checkout.",
            "type": "string"
          }
        }
      },
      "CustomerDelegateResponse": {
        "title": "CustomerDelegateResponse",
        "type": "object",
        "required": [
          "customerDelegateId",
          "delegateEmailAddress",
          "createdAt"
        ],
        "properties": {
          "customerDelegateId": {
            "description": "System unique identifier for the customer delegate.",
            "examples": [
              "custd_fA10wWw5-8RVL2EC"
            ],
            "type": "string"
          },
          "delegateEmailAddress": {
            "description": "Email address of the customer delegate.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "delegatePhoneNumber": {
            "description": "Phone number of the customer delegate.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "delegateName": {
            "description": "Name of the customer delegate.",
            "type": "string"
          },
          "linkedCustomers": {
            "description": "Customers associated with this delegate.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MerchantCustomerResponse"
            }
          },
          "customerAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerAttributes"
            }
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "CustomerDetails": {
        "title": "CustomerDetails",
        "type": "object",
        "required": [
          "customerId",
          "customerName",
          "customerEmailAddress"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for the customer.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. If provided, must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "customerName": {
            "description": "Full name of the customer.",
            "type": "string"
          },
          "customerEmailAddress": {
            "description": "Email address of the customer.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "customerPhoneNumber": {
            "description": "Phone number of the customer.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          }
        }
      },
      "CustomerFees": {
        "title": "CustomerFees",
        "description": "Customer fees associated with this loan",
        "type": "object",
        "required": [
          "annualFixedFee",
          "statementReissueFixedFee",
          "currencyConversionVariableFee",
          "internationalProcessingVariableFee",
          "latePaymentReminderFixedFee",
          "latePaymentInterestVariableFee"
        ],
        "properties": {
          "annualFixedFee": {
            "description": "Fee automatically charged to the account annually specified in major currency units",
            "type": "integer",
            "format": "int64"
          },
          "implementationFixedFee": {
            "description": "One off fee charged when loan is established specified in major currency units",
            "type": "integer",
            "format": "int64"
          },
          "premiumAccountVariableFee": {
            "description": "Rate added to all charges for premium accounts, specified as a decimal (e.g. 0.05 for 5%)",
            "type": "number"
          },
          "statementReissueFixedFee": {
            "description": "Fee charged to re-issue a statement via email",
            "type": "integer",
            "format": "int64"
          },
          "currencyConversionVariableFee": {
            "description": "Rate charged to convert drawdowns in foreign currencies to settlement currency",
            "type": "number"
          },
          "internationalProcessingVariableFee": {
            "description": "Card transaction using the Mastercard network is made in the settlement currency, but is processed outside of the market where the Service Application form is entered into",
            "type": "number"
          },
          "transactionFixedFee": {
            "description": "Fee attached to every transaction",
            "type": "integer",
            "format": "int64"
          },
          "hotelEnrichmentFixedFee": {
            "description": "Fee attached to every hotel transaction",
            "type": "integer",
            "format": "int64"
          },
          "latePaymentReminderFixedFee": {
            "description": "Fee charged if the account payment is not made on time and a Reminder Letter needs to be sent",
            "type": "integer",
            "format": "int64"
          },
          "latePaymentInterestVariableFee": {
            "description": "Late Payment fees are chargeable on overdue amounts at % cost on an annualised basis",
            "type": "number"
          }
        }
      },
      "CustomerIdentificationAddress": {
        "title": "CustomerIdentificationAddress",
        "description": "The customer's address",
        "type": "object",
        "required": [
          "address"
        ],
        "properties": {
          "address": {
            "description": "Full form address, populated from the componentised version if an independent version of the string is not available",
            "type": "string"
          },
          "componentised": {
            "$ref": "#/components/schemas/ComponentisedAddress",
            "description": "Componentised version of the customer address"
          },
          "addressIdentifier": {
            "description": "Machine-generated opaque address identifier",
            "type": "string"
          }
        }
      },
      "CustomerIdentificationDriversLicence": {
        "title": "CustomerIdentificationDriversLicence",
        "description": "The customer's drivers licence details (assumes Australia)",
        "type": "object",
        "required": [
          "number",
          "state",
          "documentNumber"
        ],
        "properties": {
          "number": {
            "description": "The number of the drivers licence",
            "type": "string"
          },
          "state": {
            "description": "The local abbreviation for the state, eg VIC for Victoria",
            "type": "string"
          },
          "documentNumber": {
            "description": "The document number introduced from 2022 on Australian licences (now mandatory for all states)",
            "type": "string"
          }
        }
      },
      "CustomerIdentificationDriversLicenceWithVersion": {
        "title": "CustomerIdentificationDriversLicenceWithVersion",
        "description": "The customer's drivers licence details with version number (used in NZ)",
        "type": "object",
        "required": [
          "number",
          "versionNumber"
        ],
        "properties": {
          "number": {
            "description": "The number of the drivers licence",
            "type": "string"
          },
          "versionNumber": {
            "description": "Version number of the licence (eg as used in NZ)",
            "type": "string"
          }
        }
      },
      "CustomerIdentificationMandatory": {
        "title": "CustomerIdentificationMandatory",
        "description": "Identification information for the customer.",
        "type": "object",
        "required": [
          "name",
          "dateOfBirth",
          "address"
        ],
        "properties": {
          "name": {
            "$ref": "#/components/schemas/CustomerIdentificationName"
          },
          "dateOfBirth": {
            "description": "The customer's date of birth",
            "type": "string",
            "format": "date"
          },
          "address": {
            "$ref": "#/components/schemas/CustomerIdentificationAddress"
          },
          "driversLicence": {
            "$ref": "#/components/schemas/CustomerIdentificationDriversLicence"
          },
          "passport": {
            "$ref": "#/components/schemas/CustomerIdentificationPassport"
          },
          "driversLicenceWithVersion": {
            "$ref": "#/components/schemas/CustomerIdentificationDriversLicenceWithVersion"
          },
          "passportWithExpiry": {
            "$ref": "#/components/schemas/CustomerIdentificationPassportWithExpiry"
          }
        }
      },
      "CustomerIdentificationName": {
        "title": "CustomerIdentificationName",
        "description": "The customer's name",
        "type": "object",
        "required": [
          "familyName"
        ],
        "properties": {
          "givenName": {
            "description": "The customer's given name",
            "type": "string"
          },
          "middleName": {
            "description": "The customer's middle name",
            "type": "string"
          },
          "familyName": {
            "description": "The customer's family name",
            "type": "string"
          }
        }
      },
      "CustomerIdentificationOutcome": {
        "title": "CustomerIdentificationOutcome",
        "description": "The KYC status of the customer",
        "type": "string",
        "enum": [
          "allow",
          "deny",
          "idwithoutdocument",
          "idwithdocument"
        ]
      },
      "CustomerIdentificationPassport": {
        "title": "CustomerIdentificationPassport",
        "description": "The customer's passport details (assumes Australia)",
        "type": "object",
        "required": [
          "number",
          "country"
        ],
        "properties": {
          "number": {
            "description": "The number of the passport",
            "type": "string"
          },
          "country": {
            "description": "The ISO-3166-alpha3 country code of the issuing national (e.g. AUS, USA, IDR, KOR, etc) – see https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes",
            "type": "string"
          }
        }
      },
      "CustomerIdentificationPassportWithExpiry": {
        "title": "CustomerIdentificationPassportWithExpiry",
        "description": "The customer's passport details with expiry date (used in NZ)",
        "type": "object",
        "required": [
          "number",
          "expiryDate"
        ],
        "properties": {
          "number": {
            "description": "The number of the passport",
            "type": "string"
          },
          "expiryDate": {
            "description": "Expiry date of the passport (as used in NZ)",
            "type": "string"
          }
        }
      },
      "CustomerKycRequest": {
        "title": "CustomerKycRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/KycConsumerCustomer"
          }
        ]
      },
      "Daily": {
        "title": "Daily",
        "type": "object",
        "required": [
          "Daily"
        ],
        "properties": {
          "Daily": {
            "$ref": "#/components/schemas/Daily1"
          }
        }
      },
      "Daily1": {
        "title": "Daily",
        "type": "object"
      },
      "DayOfWeek": {
        "title": "DayOfWeek",
        "type": "string",
        "enum": [
          "monday",
          "tuesday",
          "wednesday",
          "thursday",
          "friday"
        ]
      },
      "DayOfWeek1": {
        "title": "DayOfWeek",
        "type": "string",
        "enum": [
          "monday",
          "tuesday",
          "wednesday",
          "thursday",
          "friday"
        ]
      },
      "DaysRequiredWithin": {
        "title": "DaysRequiredWithin",
        "type": "object",
        "required": [
          "days"
        ],
        "properties": {
          "days": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "DeleteMerchantBankAccount": {
        "title": "DeleteMerchantBankAccount",
        "type": "object",
        "required": [
          "DeleteMerchantBankAccount"
        ],
        "properties": {
          "DeleteMerchantBankAccount": {
            "$ref": "#/components/schemas/DeleteMerchantBankAccount1"
          }
        }
      },
      "DeleteMerchantBankAccount1": {
        "title": "DeleteMerchantBankAccount",
        "description": "Delete a bank account. Note, the current primary bank account cannot be deleted.",
        "type": "object",
        "required": [
          "accountId"
        ],
        "properties": {
          "accountId": {
            "examples": [
              "xacc_sWY5yPi9OQH31jMA"
            ],
            "type": "string"
          }
        }
      },
      "DerivedCardStatus": {
        "title": "DerivedCardStatus",
        "type": "string",
        "enum": [
          "Active",
          "Cancelled",
          "OutOfLifetime"
        ]
      },
      "DescriptiveBillingInformation": {
        "title": "DescriptiveBillingInformation",
        "type": "object",
        "properties": {
          "accountingUnit": {
            "description": "Accounting unit as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "actionCode": {
            "description": "Action code as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "orderNumber": {
            "description": "Order number as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "departureDate": {
            "description": "Departure date as defined by the card holder. Between 6 and 8 alphanumeric characters long.",
            "type": "string"
          },
          "departmentCode": {
            "description": "Department code as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "internalAccount": {
            "description": "Internal account as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "costCenter": {
            "description": "Cost center as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "employeeNumber": {
            "description": "Employee number as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "projectNumber": {
            "description": "Project number as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          },
          "destination": {
            "description": "Destination as defined by the card holder. Between 1 and 17 alphanumeric characters long.",
            "type": "string"
          }
        }
      },
      "DigitalCardDetails": {
        "title": "DigitalCardDetails",
        "type": "object",
        "required": [
          "cardHolderName",
          "cardBrand",
          "expiryDate",
          "issuerCountry",
          "bin",
          "last4"
        ],
        "properties": {
          "cardHolderName": {
            "type": "string"
          },
          "cardBrand": {
            "type": "string"
          },
          "expiryDate": {
            "type": "string"
          },
          "issuerCountry": {
            "$ref": "#/components/schemas/IsoCountry"
          },
          "digitalCreditCardIdSynonyms": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DigitalCreditCardIdSynonymDto"
            }
          },
          "bin": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          },
          "cardCreator": {
            "type": "string"
          }
        }
      },
      "DigitalCardReferenceByDigitalCreditCardId": {
        "title": "DigitalCardReferenceByDigitalCreditCardId",
        "type": "object",
        "required": [
          "digitalCreditCardId"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          }
        }
      },
      "DigitalCardReferenceByPan": {
        "title": "DigitalCardReferenceByPan",
        "type": "object",
        "required": [
          "pan"
        ],
        "properties": {
          "pan": {
            "type": "string"
          }
        }
      },
      "DigitalCardReferenceDto_Vault": {
        "title": "DigitalCardReferenceDto_Vault",
        "oneOf": [
          {
            "$ref": "#/components/schemas/DigitalCardReferenceByDigitalCreditCardId"
          },
          {
            "$ref": "#/components/schemas/DigitalCardReferenceByPan"
          }
        ]
      },
      "DigitalCardStatus": {
        "title": "DigitalCardStatus",
        "type": "string",
        "enum": [
          "Active",
          "Cancelled"
        ]
      },
      "DigitalCardWithDigitalCreditCardIdSynonym": {
        "title": "DigitalCardWithDigitalCreditCardIdSynonym",
        "type": "object",
        "required": [
          "digitalCreditCardIdSynonym",
          "pan",
          "details"
        ],
        "properties": {
          "digitalCreditCardIdSynonym": {
            "$ref": "#/components/schemas/DigitalCreditCardIdSynonymDto"
          },
          "pan": {
            "description": "The key encrypted pan, Use the key specified in the PCI header:encryption-key-name to decrypt the pan",
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "DigitalCreditCardIdSynonymDto": {
        "title": "DigitalCreditCardIdSynonymDto",
        "type": "object",
        "required": [
          "synonym",
          "cardSynonymType"
        ],
        "properties": {
          "synonym": {
            "type": "string"
          },
          "cardSynonymType": {
            "$ref": "#/components/schemas/CardSynonymTypeDto"
          }
        }
      },
      "DirectDebit": {
        "title": "DirectDebit",
        "description": "Payment method is via direct debit.",
        "type": "object"
      },
      "DirectDebit1": {
        "title": "DirectDebit",
        "type": "object",
        "required": [
          "DirectDebit"
        ],
        "properties": {
          "DirectDebit": {
            "$ref": "#/components/schemas/DirectDebit2"
          }
        }
      },
      "DirectDebit2": {
        "title": "DirectDebit",
        "description": "Payment method is via direct debit.",
        "type": "object"
      },
      "DirectDebitFailure": {
        "title": "DirectDebitFailure",
        "type": "object",
        "required": [
          "code",
          "message",
          "detail"
        ],
        "properties": {
          "code": {
            "$ref": "#/components/schemas/DirectDebitFailureCode"
          },
          "message": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          }
        }
      },
      "DirectDebitFailureCode": {
        "title": "DirectDebitFailureCode",
        "type": "string",
        "enum": [
          "invalidbsb",
          "invalidaccount",
          "insufficientfunds",
          "other"
        ]
      },
      "DirectDebitMethod": {
        "title": "DirectDebitMethod",
        "type": "object",
        "required": [
          "DirectDebitMethod"
        ],
        "properties": {
          "DirectDebitMethod": {
            "$ref": "#/components/schemas/DirectDebitMethod1"
          }
        }
      },
      "DirectDebitMethod1": {
        "title": "DirectDebitMethod",
        "type": "object",
        "required": [
          "agreementAccepted",
          "bankAccount"
        ],
        "properties": {
          "agreementAccepted": {
            "description": "Customer has seen and accepted the direct debit agreement.",
            "type": "boolean"
          },
          "bankAccount": {
            "$ref": "#/components/schemas/BankAccount",
            "description": "Bank account to debit"
          }
        }
      },
      "DirectDebitMethodResp": {
        "title": "DirectDebitMethodResp",
        "type": "object",
        "required": [
          "DirectDebitMethodResp"
        ],
        "properties": {
          "DirectDebitMethodResp": {
            "$ref": "#/components/schemas/DirectDebitMethodResp1"
          }
        }
      },
      "DirectDebitMethodResp1": {
        "title": "DirectDebitMethodResp",
        "type": "object",
        "required": [
          "accountName",
          "currency",
          "last4"
        ],
        "properties": {
          "accountName": {
            "type": "string"
          },
          "currency": {
            "description": "Three-letter ISO currency code, in uppercase. See https://www.iso.org/iso-4217-currency-codes.html",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "last4": {
            "type": "string"
          },
          "routingNumber": {
            "type": "string"
          }
        }
      },
      "DirectDebitPaymentMethod": {
        "title": "DirectDebitPaymentMethod",
        "type": "object",
        "required": [
          "paymentMethodType",
          "accountLast4",
          "directDebitStatus"
        ],
        "properties": {
          "paymentMethodType": {
            "$ref": "#/components/schemas/PaymentMethodType1"
          },
          "accountRoutingNumber": {
            "type": "string"
          },
          "accountLast4": {
            "type": "string"
          },
          "directDebitStatus": {
            "$ref": "#/components/schemas/DirectDebitStatus"
          },
          "directDebitFailure": {
            "$ref": "#/components/schemas/DirectDebitFailure"
          }
        }
      },
      "DirectDebitStatus": {
        "title": "DirectDebitStatus",
        "type": "string",
        "enum": [
          "created",
          "cleared",
          "failed"
        ]
      },
      "DirectDebitTokenDetails": {
        "title": "DirectDebitTokenDetails",
        "type": "object",
        "required": [
          "DirectDebitTokenDetails"
        ],
        "properties": {
          "DirectDebitTokenDetails": {
            "$ref": "#/components/schemas/DirectDebitTokenDetails1"
          }
        }
      },
      "DirectDebitTokenDetails1": {
        "title": "DirectDebitTokenDetails",
        "type": "object",
        "required": [
          "agreementAcceptedDate",
          "bankAccount",
          "emailAddress"
        ],
        "properties": {
          "agreementAcceptedDate": {
            "type": "string",
            "format": "date-time"
          },
          "bankAccount": {
            "$ref": "#/components/schemas/BankAccount"
          },
          "emailAddress": {
            "type": "string"
          }
        }
      },
      "Disallow": {
        "title": "Disallow",
        "type": "object"
      },
      "DisputeOutcome": {
        "title": "DisputeOutcome",
        "description": "The state of the dispute.",
        "type": "string",
        "enum": [
          "pending",
          "won",
          "lost"
        ]
      },
      "DisputeResponse": {
        "title": "DisputeResponse",
        "type": "object",
        "required": [
          "disputeId",
          "transactionId",
          "currency",
          "disputedAmount",
          "disputeFee",
          "transactionAmount",
          "orderId",
          "referenceOrderId",
          "updatedAt",
          "createdAt"
        ],
        "properties": {
          "disputeId": {
            "description": "System unique identifier for the dispute.",
            "examples": [
              "dispute_yupH-ghKhRK74Vm2"
            ],
            "type": "string"
          },
          "transactionId": {
            "description": "System unique identifier for the transaction that is being disputed.",
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          },
          "currency": {
            "description": "The currency of the transaction and dispute as a 3 letter ISO code.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "disputedAmount": {
            "description": "The disputed amount **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "disputeFee": {
            "description": "The dispute fee charged to the merchant **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "transactionAmount": {
            "description": "The full transaction amount **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "orderId": {
            "description": "System unique identifier for the order corresponding to the disputed payment.",
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          },
          "referenceOrderId": {
            "description": "A reference provided by the merchant to identify this order, such as an order number.",
            "examples": [
              "ORD-12411"
            ],
            "type": "string"
          },
          "description": {
            "description": "A free text description of the order.",
            "type": "string"
          },
          "orderMetadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata passed in when creating the order."
          },
          "customerId": {
            "description": "System unique identifier for the customer.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "customerEmailAddress": {
            "description": "Email address of the customer.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "customerName": {
            "description": "Full name of the customer.",
            "type": "string"
          },
          "customerPhoneNumber": {
            "description": "Phone number of the customer.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "state": {
            "description": "The internal state of the dispute as reported by the underlying payment system.",
            "type": "string"
          },
          "reason": {
            "description": "The reason provided by the customer for raising the dispute.",
            "type": "string"
          },
          "outcome": {
            "$ref": "#/components/schemas/DisputeOutcome"
          },
          "updatedAt": {
            "description": "When the dispute was last updated.",
            "type": "string",
            "format": "date-time"
          },
          "createdAt": {
            "description": "When the dispute was created.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "DocumentType": {
        "title": "DocumentType",
        "type": "string",
        "enum": [
          "CompanyVerificationDocumentBack",
          "CompanyVerificationDocumentFront",
          "CompanyTaxIdVerificationDocument",
          "PersonVerificationDocumentBack",
          "PersonVerificationDocumentFront",
          "PersonVerificationAdditionalDocumentBack",
          "PersonVerificationAdditionalDocumentFront",
          "PartnershipAgreement",
          "TrustDeed",
          "TrustDeedAmendment"
        ]
      },
      "DriverLicence": {
        "title": "DriverLicence",
        "type": "object",
        "required": [
          "driverLicenceNumber",
          "country"
        ],
        "properties": {
          "driverLicenceNumber": {
            "type": "string"
          },
          "documentNumber": {
            "description": "Required for Australia driver licence",
            "type": "string"
          },
          "versionNumber": {
            "description": "Required for New Zealand driver licence",
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/Country"
          }
        }
      },
      "Economy": {
        "title": "Economy",
        "type": "object"
      },
      "Economy1": {
        "title": "Economy",
        "type": "object"
      },
      "Email": {
        "title": "Email",
        "type": "object",
        "required": [
          "template",
          "recipient",
          "sender",
          "replyTo"
        ],
        "properties": {
          "template": {
            "$ref": "#/components/schemas/TemplateDto"
          },
          "recipient": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "sender": {
            "$ref": "#/components/schemas/EmailAccount"
          },
          "replyTo": {
            "$ref": "#/components/schemas/EmailAccount"
          }
        }
      },
      "EmailAccount": {
        "title": "EmailAccount",
        "oneOf": [
          {
            "$ref": "#/components/schemas/AddressAndName"
          },
          {
            "$ref": "#/components/schemas/AddressOnly"
          }
        ]
      },
      "EmailDto": {
        "title": "EmailDto",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Email"
          },
          {
            "$ref": "#/components/schemas/EmailWithAttachment"
          },
          {
            "$ref": "#/components/schemas/MimeEmail"
          }
        ]
      },
      "EmailRecord": {
        "title": "EmailRecord",
        "type": "object",
        "required": [
          "EmailRecord"
        ],
        "properties": {
          "EmailRecord": {
            "$ref": "#/components/schemas/EmailRecord1"
          }
        }
      },
      "EmailRecord1": {
        "title": "EmailRecord",
        "description": "Get a record of emails created in the scope of a previous request.",
        "type": "object",
        "required": [
          "requestId"
        ],
        "properties": {
          "requestId": {
            "type": "string"
          },
          "filterByAttachmentFilename": {
            "type": "string"
          },
          "filterByMetadata": {
            "$ref": "#/components/schemas/KeyPartialValue"
          }
        }
      },
      "EmailRecord2": {
        "title": "EmailRecord",
        "description": "Record of emails created in the scope of a previous request.",
        "type": "object",
        "required": [
          "requestId"
        ],
        "properties": {
          "requestId": {
            "type": "string"
          },
          "emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmailDto"
            }
          }
        }
      },
      "EmailWithAttachment": {
        "title": "EmailWithAttachment",
        "type": "object",
        "required": [
          "template",
          "recipient",
          "sender",
          "replyTo",
          "attachment"
        ],
        "properties": {
          "template": {
            "$ref": "#/components/schemas/TemplateDto"
          },
          "recipient": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "sender": {
            "$ref": "#/components/schemas/EmailAccount"
          },
          "replyTo": {
            "$ref": "#/components/schemas/EmailAccount"
          },
          "attachment": {
            "$ref": "#/components/schemas/AttachmentDto"
          }
        }
      },
      "EmlInvokeClearingOutcome": {
        "title": "EmlInvokeClearingOutcome",
        "type": "object",
        "required": [
          "EmlInvokeClearingOutcome"
        ],
        "properties": {
          "EmlInvokeClearingOutcome": {
            "$ref": "#/components/schemas/EmlInvokeClearingOutcome1"
          }
        }
      },
      "EmlInvokeClearingOutcome1": {
        "title": "EmlInvokeClearingOutcome",
        "type": "object",
        "required": [
          "response"
        ],
        "properties": {
          "response": {
            "$ref": "#/components/schemas/EmlInvokeClearingResponse"
          }
        }
      },
      "EmlInvokeClearingResponse": {
        "title": "EmlInvokeClearingResponse",
        "type": "object",
        "required": [
          "success"
        ],
        "properties": {
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "EmlInvokeControlpayOutcome": {
        "title": "EmlInvokeControlpayOutcome",
        "type": "object",
        "required": [
          "EmlInvokeControlpayOutcome"
        ],
        "properties": {
          "EmlInvokeControlpayOutcome": {
            "$ref": "#/components/schemas/EmlInvokeControlpayOutcome1"
          }
        }
      },
      "EmlInvokeControlpayOutcome1": {
        "title": "EmlInvokeControlpayOutcome",
        "type": "object",
        "required": [
          "response"
        ],
        "properties": {
          "response": {
            "$ref": "#/components/schemas/EmlInvokeControlpayResponse"
          }
        }
      },
      "EmlInvokeControlpayResponse": {
        "title": "EmlInvokeControlpayResponse",
        "type": "object",
        "required": [
          "transaction_reference",
          "success"
        ],
        "properties": {
          "transaction_reference": {
            "type": "string"
          },
          "authorization_id": {
            "type": "string"
          },
          "success": {
            "type": "boolean"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "EncryptedApplePay": {
        "title": "EncryptedApplePay",
        "description": "Apple Pay data packet",
        "type": "object",
        "required": [
          "paymentMethod"
        ],
        "properties": {
          "paymentMethod": {
            "$ref": "#/components/schemas/ApplePayPaymentMethod"
          },
          "transactionIdentifier": {
            "type": "string"
          },
          "paymentData": {
            "$ref": "#/components/schemas/PaymentData"
          }
        }
      },
      "EncryptedGooglePay": {
        "title": "EncryptedGooglePay",
        "description": "Google Pay data packet",
        "type": "object",
        "required": [
          "type",
          "description",
          "info",
          "tokenizationData"
        ],
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PaymentMethod1"
          },
          "description": {
            "type": "string"
          },
          "info": {
            "$ref": "#/components/schemas/CardInfo"
          },
          "tokenizationData": {
            "$ref": "#/components/schemas/PaymentMethodTokenizationData"
          }
        }
      },
      "EntryType": {
        "title": "EntryType",
        "type": "string",
        "enum": [
          "Payment",
          "Surcharge",
          "Refund",
          "PaymentFee",
          "TransactionTransfer",
          "PaymentFeeReversal",
          "TransactionTransferReversal",
          "TransactionTransferFeeReversal",
          "Payout",
          "PayoutReversal",
          "Dispute",
          "DisputeFee",
          "DisputeReversed",
          "DisputeFeeReversed",
          "MarketplaceFeePayment",
          "ManualTopUp",
          "ManualTopUpReversal",
          "PayoutFee"
        ]
      },
      "EntryType1": {
        "title": "EntryType",
        "description": "The type of the statement line item",
        "type": "string",
        "enum": [
          "Charge",
          "Refund",
          "Dispute",
          "DisputeFee",
          "Insurance",
          "AnnualFee",
          "ImplementationFee",
          "StatementReissueFee",
          "CurrencyConversionFee",
          "InternationalProcessingFee",
          "TransactionFee",
          "HotelEnrichmentFee",
          "PremiumAccountFee",
          "LatePaymentReminderFee",
          "LatePaymentFee",
          "BankFee",
          "ThirdPartyServiceFee",
          "ManualAdjustment"
        ]
      },
      "EntryType2": {
        "title": "EntryType",
        "description": "Type of loan statement entry",
        "type": "string",
        "enum": [
          "Charge",
          "Refund",
          "Dispute",
          "Adjustment",
          "Manual",
          "StandaloneFee"
        ]
      },
      "ErrorCode": {
        "title": "ErrorCode",
        "type": "string",
        "enum": [
          "unexpected",
          "unspecified",
          "account_disabled",
          "account_not_found",
          "audience_mismatch",
          "bad_signature",
          "checkout_approval_pending",
          "credentials_invalid",
          "delegate_user_exists",
          "email_already_exists",
          "expired",
          "invalid_email",
          "invalid_token",
          "issuer_mismatch",
          "marketplace_api_key_not_found",
          "marketplace_not_found",
          "marketplace_disabled",
          "marketplace_user_not_found",
          "mfa_mismatch",
          "password_mismatch",
          "public_api_key_not_found",
          "secret_api_key_not_found",
          "suspended_merchant_account",
          "too_many_attempts",
          "credit_check_required",
          "customer_mismatch",
          "id_mismatch",
          "invalid_delegate_user",
          "kyb_required",
          "marketplace_mismatch",
          "merchant_mismatch",
          "not_allowed",
          "otp_required",
          "slug_mismatch",
          "tenant_mismatch",
          "unauthorised_principal",
          "card_declined",
          "do_not_honor",
          "expired_card",
          "fraudulent",
          "incorrect_cvc",
          "incorrect_number",
          "insufficient_funds",
          "invalid_cvc",
          "invalid_expiry_month",
          "invalid_expiry_year",
          "not_permitted",
          "invalid_mcc",
          "pickup_card",
          "processing_error",
          "stolen_card",
          "lost_card",
          "duplicate_value",
          "bad_request",
          "charge_not_found",
          "checkout_limit_breached",
          "currency_invalid",
          "customer_email_does_not_match_record",
          "customer_phone_number_does_not_match_record",
          "high_risk_detected",
          "internal_error",
          "invalid_customer_verification_codes",
          "invalid_time_range",
          "malformed_request",
          "merchant_email_invalid",
          "merchant_order_invalid",
          "merchant_slug_invalid",
          "merchant_transfer_not_found",
          "order_payment_method_unavailable",
          "order_state_invalid",
          "payment_amount_invalid",
          "payment_amount_mismatch",
          "payment_data_invalid",
          "payment_not_found",
          "payment_source_invalid",
          "payment_token_already_used",
          "refund_amount_invalid",
          "transaction_not_found",
          "unknown_charge_error",
          "no_kyc_for_customer",
          "terms_and_conditions_not_accepted",
          "invalid_input",
          "bank_account_verification_failed",
          "requester_id_missing",
          "invalid_verification_strategy_config",
          "invalid_verification_strategy"
        ]
      },
      "EventType": {
        "title": "EventType",
        "type": "string",
        "enum": [
          "PaymentSucceed",
          "PaymentRefunded",
          "PaymentFailed",
          "PaymentAccepted",
          "PaymentAuthorised",
          "PaymentDisputed",
          "PaymentDisputeWon",
          "PaymentDisputeLost",
          "PaymentCancelled",
          "PaymentIncomplete",
          "PaymentTransferred"
        ]
      },
      "ExpiryDate": {
        "title": "ExpiryDate",
        "type": "object",
        "required": [
          "expiryMonth",
          "expiryYear"
        ],
        "properties": {
          "expiryMonth": {
            "type": "string"
          },
          "expiryYear": {
            "type": "string"
          }
        }
      },
      "ExtensionData": {
        "title": "ExtensionData",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Strata"
          }
        ]
      },
      "FailedChallenge": {
        "title": "FailedChallenge",
        "type": "object",
        "properties": {
          "directoryServerTransactionId": {
            "type": "string"
          },
          "threeDSServerTransID": {
            "type": "string"
          },
          "acsTransID": {
            "type": "string"
          },
          "xid": {
            "type": "string"
          },
          "transStatus": {
            "type": "string"
          },
          "transStatusReason": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "info": {
            "type": "string"
          }
        }
      },
      "FailedFrictionless": {
        "title": "FailedFrictionless",
        "type": "object",
        "properties": {
          "directoryServerTransactionId": {
            "type": "string"
          },
          "threeDSServerTransID": {
            "type": "string"
          },
          "acsTransID": {
            "type": "string"
          },
          "xid": {
            "type": "string"
          },
          "transStatus": {
            "type": "string"
          },
          "transStatusReason": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "info": {
            "type": "string"
          }
        }
      },
      "FailedTokenized": {
        "title": "FailedTokenized",
        "type": "object",
        "properties": {
          "eci": {
            "type": "string"
          },
          "liabilityShifted": {
            "type": "boolean"
          },
          "transStatus": {
            "type": "string"
          },
          "transStatusReason": {
            "type": "string"
          }
        }
      },
      "FieldConstraint": {
        "title": "FieldConstraint",
        "oneOf": [
          {
            "$ref": "#/components/schemas/DaysRequiredWithin"
          },
          {
            "$ref": "#/components/schemas/NotRequired"
          }
        ]
      },
      "FieldFormat": {
        "title": "FieldFormat",
        "type": "string",
        "enum": [
          "Alphanumeric",
          "IsoDate",
          "Numeric",
          "Alphabetic"
        ]
      },
      "FieldValidator": {
        "title": "FieldValidator",
        "type": "object",
        "required": [
          "name",
          "statementConstraint",
          "transactionConstraint",
          "minLength",
          "maxLength",
          "format"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "statementConstraint": {
            "$ref": "#/components/schemas/FieldConstraint"
          },
          "transactionConstraint": {
            "$ref": "#/components/schemas/FieldConstraint"
          },
          "minLength": {
            "type": "integer",
            "format": "int32"
          },
          "maxLength": {
            "type": "integer",
            "format": "int32"
          },
          "format": {
            "$ref": "#/components/schemas/FieldFormat"
          }
        }
      },
      "FieldValidatorEntry": {
        "title": "FieldValidatorEntry",
        "type": "object",
        "required": [
          "path",
          "validator"
        ],
        "properties": {
          "path": {
            "$ref": "#/components/schemas/Path"
          },
          "validator": {
            "$ref": "#/components/schemas/FieldValidator"
          }
        }
      },
      "FileCategory": {
        "title": "FileCategory",
        "type": "string",
        "enum": [
          "MerchantOnboarding"
        ]
      },
      "FileType": {
        "title": "FileType",
        "type": "string",
        "enum": [
          "jpeg",
          "png",
          "pdf",
          "jpg"
        ]
      },
      "FinanceUser": {
        "title": "FinanceUser",
        "type": "object",
        "required": [
          "FinanceUser"
        ],
        "properties": {
          "FinanceUser": {
            "$ref": "#/components/schemas/FinanceUser1"
          }
        }
      },
      "FinanceUser1": {
        "title": "FinanceUser",
        "description": "A finance user has view access to all loans and cards associated with the customer, along with the ability to pay loan statements.",
        "type": "object",
        "required": [
          "canCreateCards"
        ],
        "properties": {
          "canCreateCards": {
            "description": "Can this finance user create their own loan-backed credit cards.",
            "type": "boolean"
          }
        }
      },
      "First": {
        "title": "First",
        "type": "object"
      },
      "First1": {
        "title": "First",
        "type": "object"
      },
      "Flight": {
        "title": "Flight",
        "type": "object",
        "required": [
          "Flight"
        ],
        "properties": {
          "Flight": {
            "$ref": "#/components/schemas/Flight1"
          }
        }
      },
      "Flight1": {
        "title": "Flight",
        "type": "object",
        "required": [
          "dbi",
          "passengerName",
          "flightDate",
          "departureAirportCode",
          "destinationAirportCode",
          "airlineCode",
          "flightClass"
        ],
        "properties": {
          "dbi": {
            "$ref": "#/components/schemas/DescriptiveBillingInformation"
          },
          "passengerName": {
            "description": "Passenger name between 1 and 45 alphanumeric characters long.",
            "type": "string"
          },
          "flightDate": {
            "description": "Flight date.",
            "type": "string",
            "format": "date"
          },
          "departureAirportCode": {
            "description": "Departure 3-letter IATA airport code.",
            "type": "string"
          },
          "destinationAirportCode": {
            "description": "Destination 3-letter IATA airport code.",
            "type": "string"
          },
          "airlineCode": {
            "description": "Airline 3-letter ICAO or 2-letter IATA airline code.",
            "type": "string"
          },
          "flightClass": {
            "$ref": "#/components/schemas/FlightClass"
          }
        }
      },
      "FlightClass": {
        "title": "FlightClass",
        "description": "Flight class.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Business"
          },
          {
            "$ref": "#/components/schemas/Economy"
          },
          {
            "$ref": "#/components/schemas/First"
          },
          {
            "$ref": "#/components/schemas/Other"
          }
        ]
      },
      "FlowNotAttempted": {
        "title": "FlowNotAttempted",
        "type": "object"
      },
      "ForBinGroups": {
        "title": "ForBinGroups",
        "type": "object",
        "required": [
          "binGroupIds"
        ],
        "properties": {
          "binGroupIds": {
            "type": "array",
            "minItems": 1,
            "items": {
              "examples": [
                "bing_PHfyYaFWpTCP7lNy"
              ],
              "type": "string"
            }
          }
        }
      },
      "ForCardBrand": {
        "title": "ForCardBrand",
        "type": "object",
        "required": [
          "cardBrand"
        ],
        "properties": {
          "cardBrand": {
            "$ref": "#/components/schemas/CardBrand"
          }
        }
      },
      "ForCardFunding": {
        "title": "ForCardFunding",
        "type": "object",
        "required": [
          "cardFunding"
        ],
        "properties": {
          "cardFunding": {
            "$ref": "#/components/schemas/CardFunding"
          }
        }
      },
      "ForCardPrepaid": {
        "title": "ForCardPrepaid",
        "type": "object",
        "required": [
          "isPrepaid"
        ],
        "properties": {
          "isPrepaid": {
            "type": "boolean"
          }
        }
      },
      "ForCurrency": {
        "title": "ForCurrency",
        "type": "object",
        "required": [
          "currency"
        ],
        "properties": {
          "currency": {
            "description": "ISO 4217 3 Digits Currency code",
            "type": "string"
          }
        }
      },
      "ForCustomerType": {
        "title": "ForCustomerType",
        "type": "object",
        "required": [
          "customerType"
        ],
        "properties": {
          "customerType": {
            "$ref": "#/components/schemas/PaymentCustomerType"
          }
        }
      },
      "ForIssueCountry": {
        "title": "ForIssueCountry",
        "type": "object",
        "required": [
          "country"
        ],
        "properties": {
          "country": {
            "$ref": "#/components/schemas/IsoCountry"
          }
        }
      },
      "ForPayPlanVariant": {
        "title": "ForPayPlanVariant",
        "type": "object",
        "required": [
          "payPlanVariant"
        ],
        "properties": {
          "payPlanVariant": {
            "$ref": "#/components/schemas/PayPlanVariant"
          }
        }
      },
      "ForPayType": {
        "title": "ForPayType",
        "type": "object",
        "required": [
          "payType"
        ],
        "properties": {
          "payType": {
            "$ref": "#/components/schemas/PayType"
          }
        }
      },
      "ForPaymentMethodType": {
        "title": "ForPaymentMethodType",
        "type": "object",
        "required": [
          "methodType"
        ],
        "properties": {
          "methodType": {
            "$ref": "#/components/schemas/PaymentMethodType"
          }
        }
      },
      "ForProductType": {
        "title": "ForProductType",
        "type": "object",
        "required": [
          "productType"
        ],
        "properties": {
          "productType": {
            "$ref": "#/components/schemas/ProductType"
          }
        }
      },
      "ForSchemeProduct": {
        "title": "ForSchemeProduct",
        "type": "object",
        "required": [
          "schemeProduct"
        ],
        "properties": {
          "schemeProduct": {
            "$ref": "#/components/schemas/SchemeProduct"
          }
        }
      },
      "Fortnightly": {
        "title": "Fortnightly",
        "type": "object",
        "required": [
          "Fortnightly"
        ],
        "properties": {
          "Fortnightly": {
            "$ref": "#/components/schemas/Fortnightly1"
          }
        }
      },
      "Fortnightly1": {
        "title": "Fortnightly",
        "type": "object",
        "required": [
          "issueDayOfWeek"
        ],
        "properties": {
          "issueDayOfWeek": {
            "$ref": "#/components/schemas/DayOfWeek1"
          }
        }
      },
      "FxRateConversion": {
        "title": "FxRateConversion",
        "type": "object",
        "required": [
          "sourceAmount",
          "sourceCurrency",
          "exchangeRate",
          "rateUpdatedAt"
        ],
        "properties": {
          "sourceAmount": {
            "description": "Gross amount in major units of source currency.",
            "type": "number"
          },
          "sourceTaxAmount": {
            "description": "Tax amount in major units of source currency.",
            "type": "number"
          },
          "sourceNetAmount": {
            "description": "Net amount in major units of source currency.",
            "type": "number"
          },
          "sourceCurrency": {
            "description": "Original currency the entry was specified in.",
            "type": "string"
          },
          "targetAmount": {
            "description": "Gross amount in major units of target currency.",
            "type": "number"
          },
          "targetTaxAmount": {
            "description": "Tax amount in major units of target currency.",
            "type": "number"
          },
          "targetNetAmount": {
            "description": "Net amount in major units of target currency.",
            "type": "number"
          },
          "targetCurrency": {
            "description": "Currency to convert into.",
            "type": "string"
          },
          "exchangeRate": {
            "description": "The rate to convert one unit of source currency to the target currency.",
            "type": "number"
          },
          "rateUpdatedAt": {
            "description": "When the exchange rate was set.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "GeneralJsonOutcome": {
        "title": "GeneralJsonOutcome",
        "type": "object",
        "required": [
          "GeneralJsonOutcome"
        ],
        "properties": {
          "GeneralJsonOutcome": {
            "$ref": "#/components/schemas/GeneralJsonOutcome1"
          }
        }
      },
      "GeneralJsonOutcome1": {
        "title": "GeneralJsonOutcome",
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {}
        }
      },
      "GetAgreementStateResponse": {
        "title": "GetAgreementStateResponse",
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "$ref": "#/components/schemas/AgreementStatus"
          }
        }
      },
      "GetDigitalCardRedactedRequest": {
        "title": "GetDigitalCardRedactedRequest",
        "type": "object",
        "required": [
          "GetDigitalCardRedactedRequest"
        ],
        "properties": {
          "GetDigitalCardRedactedRequest": {
            "$ref": "#/components/schemas/GetDigitalCardRedactedRequest1"
          }
        }
      },
      "GetDigitalCardRedactedRequest1": {
        "title": "GetDigitalCardRedactedRequest",
        "type": "object",
        "required": [
          "digitalCreditCardId"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          }
        }
      },
      "GetDigitalCardRedactedResponse": {
        "title": "GetDigitalCardRedactedResponse",
        "type": "object",
        "required": [
          "GetDigitalCardRedactedResponse"
        ],
        "properties": {
          "GetDigitalCardRedactedResponse": {
            "$ref": "#/components/schemas/GetDigitalCardRedactedResponse1"
          }
        }
      },
      "GetDigitalCardRedactedResponse1": {
        "title": "GetDigitalCardRedactedResponse",
        "type": "object",
        "required": [
          "details"
        ],
        "properties": {
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "GetDigitalCardUnredactedRequest": {
        "title": "GetDigitalCardUnredactedRequest",
        "type": "object",
        "required": [
          "GetDigitalCardUnredactedRequest"
        ],
        "properties": {
          "GetDigitalCardUnredactedRequest": {
            "$ref": "#/components/schemas/GetDigitalCardUnredactedRequest1"
          }
        }
      },
      "GetDigitalCardUnredactedRequest1": {
        "title": "GetDigitalCardUnredactedRequest",
        "type": "object",
        "required": [
          "digitalCreditCardId"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          }
        }
      },
      "GetDigitalCardUnredactedResponse": {
        "title": "GetDigitalCardUnredactedResponse",
        "type": "object",
        "required": [
          "GetDigitalCardUnredactedResponse"
        ],
        "properties": {
          "GetDigitalCardUnredactedResponse": {
            "$ref": "#/components/schemas/GetDigitalCardUnredactedResponse1"
          }
        }
      },
      "GetDigitalCardUnredactedResponse1": {
        "title": "GetDigitalCardUnredactedResponse",
        "type": "object",
        "required": [
          "pan",
          "details"
        ],
        "properties": {
          "pan": {
            "description": "The clear-text, unredacted digits of the card number",
            "type": "string"
          },
          "cvv": {
            "description": "The clear-text, unredacted digits of the card's CVV (if it has one)",
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "GetDigitalCardsForLoanResponse": {
        "title": "GetDigitalCardsForLoanResponse",
        "type": "object",
        "required": [
          "GetDigitalCardsForLoanResponse"
        ],
        "properties": {
          "GetDigitalCardsForLoanResponse": {
            "$ref": "#/components/schemas/GetDigitalCardsForLoanResponse1"
          }
        }
      },
      "GetDigitalCardsForLoanResponse1": {
        "title": "GetDigitalCardsForLoanResponse",
        "type": "object",
        "properties": {
          "cards": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
            }
          }
        }
      },
      "GetDigitalCardsUnredactedBySynonym": {
        "title": "GetDigitalCardsUnredactedBySynonym",
        "type": "object",
        "required": [
          "GetDigitalCardsUnredactedBySynonym"
        ],
        "properties": {
          "GetDigitalCardsUnredactedBySynonym": {
            "$ref": "#/components/schemas/GetDigitalCardsUnredactedBySynonym1"
          }
        }
      },
      "GetDigitalCardsUnredactedBySynonym1": {
        "title": "GetDigitalCardsUnredactedBySynonym",
        "type": "object",
        "properties": {
          "digitalCardsUnredacted": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DigitalCardWithDigitalCreditCardIdSynonym"
            }
          }
        }
      },
      "GetDigitalCardsUnredactedBySynonymRequest": {
        "title": "GetDigitalCardsUnredactedBySynonymRequest",
        "type": "object",
        "required": [
          "GetDigitalCardsUnredactedBySynonymRequest"
        ],
        "properties": {
          "GetDigitalCardsUnredactedBySynonymRequest": {
            "$ref": "#/components/schemas/GetDigitalCardsUnredactedBySynonymRequest1"
          }
        }
      },
      "GetDigitalCardsUnredactedBySynonymRequest1": {
        "title": "GetDigitalCardsUnredactedBySynonymRequest",
        "type": "object",
        "required": [
          "digitalCardReferences"
        ],
        "properties": {
          "digitalCardReferences": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/DigitalCardReferenceDto_Vault"
            }
          }
        }
      },
      "GooglePay": {
        "title": "GooglePay",
        "description": "Payment method is via GooglePay.",
        "type": "object",
        "required": [
          "cardAttributes"
        ],
        "properties": {
          "cardAttributes": {
            "$ref": "#/components/schemas/CardAttributes"
          }
        }
      },
      "GooglePay1": {
        "title": "GooglePay",
        "type": "object",
        "required": [
          "GooglePay"
        ],
        "properties": {
          "GooglePay": {
            "$ref": "#/components/schemas/GooglePay2"
          }
        }
      },
      "GooglePay2": {
        "title": "GooglePay",
        "description": "Payment method is based on a Google Pay datagram.",
        "type": "object",
        "required": [
          "googlePay"
        ],
        "properties": {
          "googlePay": {
            "$ref": "#/components/schemas/EncryptedGooglePay"
          }
        }
      },
      "HandleEmlQueuedWebhookEventsNow": {
        "title": "HandleEmlQueuedWebhookEventsNow",
        "type": "object",
        "required": [
          "HandleEmlQueuedWebhookEventsNow"
        ],
        "properties": {
          "HandleEmlQueuedWebhookEventsNow": {
            "$ref": "#/components/schemas/HandleEmlQueuedWebhookEventsNow1"
          }
        }
      },
      "HandleEmlQueuedWebhookEventsNow1": {
        "title": "HandleEmlQueuedWebhookEventsNow",
        "description": "Pretend to be the cron job HandleEmlQueuedWebhookEvent firing up.",
        "type": "object"
      },
      "Header": {
        "title": "Header",
        "type": "object",
        "required": [
          "publicKeyHash",
          "transactionId"
        ],
        "properties": {
          "publicKeyHash": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "applicationData": {
            "type": "string"
          },
          "ephemeralPublicKey": {
            "type": "string"
          },
          "wrappedKey": {
            "type": "string"
          }
        }
      },
      "HkBankAccountIdentifier": {
        "title": "HkBankAccountIdentifier",
        "type": "object",
        "required": [
          "HkBankAccountIdentifier"
        ],
        "properties": {
          "HkBankAccountIdentifier": {
            "$ref": "#/components/schemas/HkBankAccountIdentifier1"
          }
        }
      },
      "HkBankAccountIdentifier1": {
        "title": "HkBankAccountIdentifier",
        "description": "A Hong Kong based bank account in HKD",
        "type": "object",
        "required": [
          "accountNumber"
        ],
        "properties": {
          "accountNumber": {
            "description": "Account number, 9-12 digits.",
            "type": "string"
          }
        }
      },
      "HkUsdBankAccountIdentifier": {
        "title": "HkUsdBankAccountIdentifier",
        "type": "object",
        "required": [
          "HkUsdBankAccountIdentifier"
        ],
        "properties": {
          "HkUsdBankAccountIdentifier": {
            "$ref": "#/components/schemas/HkUsdBankAccountIdentifier1"
          }
        }
      },
      "HkUsdBankAccountIdentifier1": {
        "title": "HkUsdBankAccountIdentifier",
        "description": "A Hong Kong based bank account in USD",
        "type": "object",
        "required": [
          "accountNumber"
        ],
        "properties": {
          "accountNumber": {
            "description": "Account number.",
            "type": "string"
          }
        }
      },
      "Hotel": {
        "title": "Hotel",
        "type": "object",
        "required": [
          "Hotel"
        ],
        "properties": {
          "Hotel": {
            "$ref": "#/components/schemas/Hotel1"
          }
        }
      },
      "Hotel1": {
        "title": "Hotel",
        "type": "object",
        "required": [
          "dbi",
          "guestName",
          "checkInDate",
          "checkOutDate",
          "roomNights"
        ],
        "properties": {
          "dbi": {
            "$ref": "#/components/schemas/DescriptiveBillingInformation"
          },
          "guestName": {
            "description": "Guest name between 1 and 45 alphanumeric characters long.",
            "type": "string"
          },
          "checkInDate": {
            "description": "Hotel check-in date.",
            "type": "string",
            "format": "date"
          },
          "checkOutDate": {
            "description": "Hotel check-out date.",
            "type": "string",
            "format": "date"
          },
          "roomNights": {
            "description": "Room  nights",
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "IdDocOption": {
        "title": "IdDocOption",
        "type": "object",
        "required": [
          "remainingAttempts"
        ],
        "properties": {
          "idDocType": {
            "$ref": "#/components/schemas/IdDocType",
            "description": "Type of document that this option relates to (specify either this or `idDocTypes`"
          },
          "idDocTypes": {
            "description": "Combinations of document that this option relates to (specify either this or `idDocType`",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdDocType"
            }
          },
          "remainingAttempts": {
            "description": "Number of attempts that the customer has remaining for this type of document",
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "IdDocType": {
        "title": "IdDocType",
        "type": "string",
        "enum": [
          "driverslicence",
          "passport",
          "driverslicencewithversion",
          "passportwithexpiry"
        ]
      },
      "IdType": {
        "title": "IdType",
        "type": "string",
        "enum": [
          "Passport",
          "DriverLicence"
        ]
      },
      "ImposePlatformFee": {
        "title": "ImposePlatformFee",
        "type": "object",
        "required": [
          "fixed",
          "rate"
        ],
        "properties": {
          "fixed": {
            "type": "integer",
            "format": "int64"
          },
          "rate": {
            "type": "number"
          }
        }
      },
      "IncompleteChallenge": {
        "title": "IncompleteChallenge",
        "type": "object",
        "properties": {
          "internalAuthorisationId": {
            "type": "string"
          },
          "authenticationTransactionId": {
            "type": "string"
          },
          "acsUrl": {
            "type": "string"
          },
          "creq": {
            "type": "string"
          },
          "directoryServerTransactionId": {
            "type": "string"
          },
          "threeDSServerTransID": {
            "type": "string"
          },
          "acsTransID": {
            "type": "string"
          },
          "xid": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "challengeUrl": {
            "type": "string"
          },
          "info": {
            "type": "string"
          }
        }
      },
      "Industry": {
        "title": "Industry",
        "type": "string",
        "enum": [
          "AcRefrigerationRepair",
          "AccountingBookkeepingServices",
          "AdvertisingServices",
          "AgriculturalCooperative",
          "AirlinesAirCarriers",
          "AirportsFlyingFields",
          "AmbulanceServices",
          "AmusementParksCarnivals",
          "AntiqueReproductions",
          "AntiqueShops",
          "Aquariums",
          "ArchitecturalSurveyingServices",
          "ArtDealersAndGalleries",
          "ArtistsSupplyAndCraftShops",
          "AutoBodyRepairShops",
          "AutoPaintShops",
          "AutoServiceShops",
          "AutoAndHomeSupplyStores",
          "AutomatedCashDisburse",
          "AutomatedFuelDispensers",
          "AutomobileAssociations",
          "AutomotivePartsAndAccessoriesStores",
          "AutomotiveTireStores",
          "BailAndBondPayments",
          "Bakeries",
          "BandsOrchestras",
          "BarberAndBeautyShops",
          "BettingCasinoGambling",
          "BicycleShops",
          "BilliardPoolEstablishments",
          "BoatDealers",
          "BoatRentalsAndLeases",
          "BookStores",
          "BooksPeriodicalsAndNewspapers",
          "BowlingAlleys",
          "BusLines",
          "BusinessSecretarialSchools",
          "BuyingShoppingServices",
          "CableSatelliteAndOtherPayTelevisionAndRadio",
          "CameraAndPhotographicSupplyStores",
          "CandyNutAndConfectioneryStores",
          "CarRentalAgencies",
          "CarWashes",
          "CarAndTruckDealersNewUsed",
          "CarAndTruckDealersUsedOnly",
          "CarpentryServices",
          "CarpetUpholsteryCleaning",
          "Caterers",
          "CharitableAndSocialServiceOrganizationsFundraising",
          "ChemicalsAndAlliedProducts",
          "ChildCareServices",
          "ChildrensAndInfantsWearStores",
          "ChiropodistsPodiatrists",
          "Chiropractors",
          "CigarStoresAndStands",
          "CivicSocialFraternalAssociations",
          "CleaningAndMaintenance",
          "ClothingRental",
          "CollegesUniversities",
          "CommercialEquipment",
          "CommercialFootwear",
          "CommercialPhotographyArtAndGraphics",
          "CommuterTransportAndFerries",
          "ComputerNetworkServices",
          "ComputerProgramming",
          "ComputerRepair",
          "ComputerSoftwareStores",
          "ComputersPeripheralsAndSoftware",
          "ConcreteWorkServices",
          "ConstructionMaterials",
          "ConsultingPublicRelations",
          "CorrespondenceSchools",
          "CosmeticStores",
          "CounselingServices",
          "CountryClubs",
          "CourierServices",
          "CourtCosts",
          "CreditReportingAgencies",
          "CruiseLines",
          "DairyProductsStores",
          "DanceHallStudiosSchools",
          "DatingEscortServices",
          "DentistsOrthodontists",
          "DepartmentStores",
          "DetectiveAgencies",
          "DigitalGoodsMedia",
          "DigitalGoodsApplications",
          "DigitalGoodsGames",
          "DigitalGoodsLargeVolume",
          "DirectMarketingCatalogMerchant",
          "DirectMarketingCombinationCatalogAndRetailMerchant",
          "DirectMarketingInboundTelemarketing",
          "DirectMarketingInsuranceServices",
          "DirectMarketingOther",
          "DirectMarketingOutboundTelemarketing",
          "DirectMarketingSubscription",
          "DirectMarketingTravel",
          "DiscountStores",
          "Doctors",
          "DoorToDoorSales",
          "DraperyWindowCoveringAndUpholsteryStores",
          "DrinkingPlaces",
          "DrugStoresAndPharmacies",
          "DrugsDrugProprietariesAndDruggistSundries",
          "DryCleaners",
          "DurableGoods",
          "DutyFreeStores",
          "EatingPlacesRestaurants",
          "EducationalServices",
          "ElectricRazorStores",
          "ElectricalPartsAndEquipment",
          "ElectricalServices",
          "ElectronicsRepairShops",
          "ElectronicsStores",
          "ElementarySecondarySchools",
          "EmploymentTempAgencies",
          "EquipmentRental",
          "ExterminatingServices",
          "FamilyClothingStores",
          "FastFoodRestaurants",
          "FinancialInstitutions",
          "FinesGovernmentAdministrativeEntities",
          "FireplaceFireplaceScreensAndAccessoriesStores",
          "FloorCoveringStores",
          "Florists",
          "FloristsSuppliesNurseryStockAndFlowers",
          "FreezerAndLockerMeatProvisioners",
          "FuelDealersNonAutomotive",
          "FuneralServicesCrematories",
          "FurnitureRepairRefinishing",
          "FurnitureHomeFurnishingsAndEquipmentStoresExceptAppliances",
          "FurriersAndFurShops",
          "GeneralServices",
          "GiftCardNoveltyAndSouvenirShops",
          "GlassPaintAndWallpaperStores",
          "GlasswareCrystalStores",
          "GolfCoursesPublic",
          "GovernmentServices",
          "GroceryStoresSupermarkets",
          "HardwareStores",
          "HardwareEquipmentAndSupplies",
          "HealthAndBeautySpas",
          "HearingAidsSalesAndSupplies",
          "HeatingPlumbingAC",
          "HobbyToyAndGameShops",
          "HomeSupplyWarehouseStores",
          "Hospitals",
          "HotelsMotelsAndResorts",
          "HouseholdApplianceStores",
          "IndustrialSupplies",
          "InformationRetrievalServices",
          "InsuranceDefault",
          "InsuranceUnderwritingPremiums",
          "IntraCompanyPurchases",
          "JewelryStoresWatchesClocksAndSilverwareStores",
          "LandscapingServices",
          "Laundries",
          "LaundryCleaningServices",
          "LegalServicesAttorneys",
          "LuggageAndLeatherGoodsStores",
          "LumberBuildingMaterialsStores",
          "ManualCashDisburse",
          "MarinasServiceAndSupplies",
          "MasonryStoneworkAndPlaster",
          "MassageParlors",
          "MedicalServices",
          "MedicalAndDentalLabs",
          "MedicalDentalOphthalmicAndHospitalEquipmentAndSupplies",
          "MembershipOrganizations",
          "MensAndBoysClothingAndAccessoriesStores",
          "MensWomensClothingStores",
          "MetalServiceCenters",
          "MiscellaneousApparelAndAccessoryShops",
          "MiscellaneousAutoDealers",
          "MiscellaneousBusinessServices",
          "MiscellaneousFoodStores",
          "MiscellaneousGeneralMerchandise",
          "MiscellaneousGeneralServices",
          "MiscellaneousHomeFurnishingSpecialtyStores",
          "MiscellaneousPublishingAndPrinting",
          "MiscellaneousRecreationServices",
          "MiscellaneousRepairShops",
          "MiscellaneousSpecialtyRetail",
          "MobileHomeDealers",
          "MotionPictureTheaters",
          "MotorFreightCarriersAndTrucking",
          "MotorHomesDealers",
          "MotorVehicleSuppliesAndNewParts",
          "MotorcycleShopsAndDealers",
          "MotorcycleShopsDealers",
          "MusicStoresMusicalInstrumentsPianosAndSheetMusic",
          "NewsDealersAndNewsstands",
          "NonFiMoneyOrders",
          "NonFiStoredValueCardPurchaseLoad",
          "NondurableGoods",
          "NurseriesLawnAndGardenSupplyStores",
          "NursingPersonalCare",
          "OfficeAndCommercialFurniture",
          "OpticiansEyeglasses",
          "OptometristsOphthalmologist",
          "OrthopedicGoodsProstheticDevices",
          "Osteopaths",
          "PackageStoresBeerWineAndLiquor",
          "PaintsVarnishesAndSupplies",
          "ParkingLotsGarages",
          "PassengerRailways",
          "PawnShops",
          "PetShopsPetFoodAndSupplies",
          "PetroleumAndPetroleumProducts",
          "PhotoDeveloping",
          "PhotographicStudios",
          "PhotographicPhotocopyMicrofilmEquipmentAndSupplies",
          "PictureVideoProduction",
          "PieceGoodsNotionsAndOtherDryGoods",
          "PlumbingHeatingEquipmentAndSupplies",
          "PoliticalOrganizations",
          "PostalServicesGovernmentOnly",
          "PreciousStonesAndMetalsWatchesAndJewelry",
          "ProfessionalServices",
          "PublicWarehousingAndStorage",
          "QuickCopyReproAndBlueprint",
          "Railroads",
          "RealEstateAgentsAndManagersRentals",
          "RecordStores",
          "RecreationalVehicleRentals",
          "ReligiousGoodsStores",
          "ReligiousOrganizations",
          "RoofingSidingSheetMetal",
          "SecretarialSupportServices",
          "SecurityBrokersDealers",
          "ServiceStations",
          "SewingNeedleworkFabricAndPieceGoodsStores",
          "ShoeRepairHatCleaning",
          "ShoeStores",
          "SmallApplianceRepair",
          "SnowmobileDealers",
          "SpecialTradeServices",
          "SpecialtyCleaning",
          "SportingGoodsStores",
          "SportingRecreationCamps",
          "SportsClubsFields",
          "SportsAndRidingApparelStores",
          "StampAndCoinStores",
          "StationaryOfficeSuppliesPrintingAndWritingPaper",
          "StationeryStoresOfficeAndSchoolSupplyStores",
          "SwimmingPoolsSales",
          "TUiTravelGermany",
          "TailorsAlterations",
          "TaxPaymentsGovernmentAgencies",
          "TaxPreparationServices",
          "TaxicabsLimousines",
          "TelecommunicationEquipmentAndTelephoneSales",
          "TelecommunicationServices",
          "TelegraphServices",
          "TentAndAwningShops",
          "TestingLaboratories",
          "TheatricalTicketAgencies",
          "Timeshares",
          "TireRetreadingAndRepair",
          "TollsBridgeFees",
          "TouristAttractionsAndExhibits",
          "TowingServices",
          "TrailerParksCampgrounds",
          "TransportationServices",
          "TravelAgenciesTourOperators",
          "TruckStopIteration",
          "TruckUtilityTrailerRentals",
          "TypesettingPlateMakingAndRelatedServices",
          "TypewriterStores",
          "USFederalGovernmentAgenciesOrDepartments",
          "UniformsCommercialClothing",
          "UsedMerchandiseAndSecondhandStores",
          "Utilities",
          "VarietyStores",
          "VeterinaryServices",
          "VideoAmusementGameSupplies",
          "VideoGameArcades",
          "VideoTapeRentalStores",
          "VocationalTradeSchools",
          "WatchJewelryRepair",
          "WeldingRepair",
          "WholesaleClubs",
          "WigAndToupeeStores",
          "WiresMoneyOrders",
          "WomensAccessoryAndSpecialtyShops",
          "WomensReadyToWearStores",
          "WreckingAndSalvageYards"
        ]
      },
      "IndustryGroup": {
        "title": "IndustryGroup",
        "description": "The industry group this loan is restricted to, if any.",
        "type": "string",
        "enum": [
          "travel",
          "procurement"
        ]
      },
      "IndustryInfo": {
        "title": "IndustryInfo",
        "type": "object",
        "required": [
          "name",
          "description",
          "mcc"
        ],
        "properties": {
          "name": {
            "description": "Unique name, eg. AcRefrigerationRepair",
            "type": "string"
          },
          "description": {
            "description": "Description, eg. A/C, Refrigeration Repair",
            "type": "string"
          },
          "mcc": {
            "description": "Merchant Category Code, a four-digit number listed in ISO 18245 for retail financial services",
            "type": "string"
          }
        }
      },
      "InstalmentFrequency": {
        "title": "InstalmentFrequency",
        "description": "The time period between instalments.",
        "type": "string",
        "enum": [
          "Weekly",
          "Fortnightly",
          "EveryFourWeeks",
          "EverySevenWeeks",
          "EveryThirtyDays",
          "EveryTenMinutes"
        ]
      },
      "InvoiceLineItem": {
        "title": "InvoiceLineItem",
        "type": "object",
        "required": [
          "feeAmount",
          "taxAmount",
          "count",
          "description"
        ],
        "properties": {
          "feeAmount": {
            "description": "The fee **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "taxAmount": {
            "description": "The amount of tax applied to the charge **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "totalTransactionValue": {
            "description": "The total transaction value corresponding to these fees **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "count": {
            "description": "The number of transactions corresponding to these fees.",
            "type": "number"
          },
          "description": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "unitPrice": {
            "type": "string"
          }
        }
      },
      "InvoiceOrderTypeDetails": {
        "title": "InvoiceOrderTypeDetails",
        "type": "object",
        "required": [
          "InvoiceOrderTypeDetails"
        ],
        "properties": {
          "InvoiceOrderTypeDetails": {
            "$ref": "#/components/schemas/InvoiceOrderTypeDetails1"
          }
        }
      },
      "InvoiceOrderTypeDetails1": {
        "title": "InvoiceOrderTypeDetails",
        "type": "object",
        "properties": {
          "invoiceLineItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InvoiceLineItem"
            }
          },
          "customerConfig": {
            "$ref": "#/components/schemas/OrderCustomerConfig"
          }
        }
      },
      "IsoCountry": {
        "title": "IsoCountry",
        "type": "string",
        "enum": [
          "AF",
          "AX",
          "AL",
          "DZ",
          "AS",
          "AD",
          "AO",
          "AI",
          "AQ",
          "AG",
          "AR",
          "AM",
          "AW",
          "AU",
          "AT",
          "AZ",
          "BS",
          "BH",
          "BD",
          "BB",
          "BY",
          "BE",
          "BZ",
          "BJ",
          "BM",
          "BT",
          "BO",
          "BQ",
          "BA",
          "BW",
          "BV",
          "BR",
          "IO",
          "VG",
          "BN",
          "BG",
          "BF",
          "BI",
          "KH",
          "CM",
          "CA",
          "CV",
          "KY",
          "CF",
          "TD",
          "CL",
          "CN",
          "CX",
          "CC",
          "CO",
          "KM",
          "CG",
          "CK",
          "CR",
          "CI",
          "HR",
          "CU",
          "CW",
          "CY",
          "CZ",
          "DK",
          "DJ",
          "DM",
          "DO",
          "EC",
          "EG",
          "SV",
          "GQ",
          "ER",
          "EE",
          "ET",
          "FK",
          "FO",
          "FJ",
          "FI",
          "FR",
          "GF",
          "PF",
          "TF",
          "GA",
          "GM",
          "GE",
          "DE",
          "GH",
          "GI",
          "GR",
          "GL",
          "GD",
          "GP",
          "GU",
          "GT",
          "GG",
          "GN",
          "GW",
          "GY",
          "HT",
          "HM",
          "HN",
          "HK",
          "HU",
          "IS",
          "IN",
          "ID",
          "IR",
          "IQ",
          "IE",
          "IM",
          "IL",
          "IT",
          "JM",
          "JP",
          "JE",
          "JO",
          "KZ",
          "KE",
          "KI",
          "KW",
          "KG",
          "LA",
          "LV",
          "LB",
          "LS",
          "LR",
          "LY",
          "LI",
          "LT",
          "LU",
          "MO",
          "MK",
          "MG",
          "MW",
          "MY",
          "MV",
          "ML",
          "MT",
          "MH",
          "MQ",
          "MR",
          "MU",
          "YT",
          "MX",
          "FM",
          "MD",
          "MC",
          "MN",
          "ME",
          "MS",
          "MA",
          "MZ",
          "MM",
          "NA",
          "NR",
          "NP",
          "NL",
          "NC",
          "NZ",
          "NI",
          "NE",
          "NG",
          "NU",
          "NF",
          "MP",
          "KP",
          "NO",
          "OM",
          "PK",
          "PW",
          "PS",
          "PA",
          "PG",
          "PY",
          "PE",
          "PH",
          "PN",
          "PL",
          "PT",
          "PR",
          "QA",
          "RE",
          "RO",
          "RU",
          "RW",
          "BL",
          "SH",
          "KN",
          "LC",
          "MF",
          "PM",
          "VC",
          "WS",
          "SM",
          "ST",
          "SA",
          "SN",
          "RS",
          "SC",
          "SL",
          "SG",
          "SX",
          "SK",
          "SI",
          "SB",
          "SO",
          "ZA",
          "GS",
          "KR",
          "SS",
          "ES",
          "LK",
          "SD",
          "SR",
          "SJ",
          "SZ",
          "SE",
          "CH",
          "SY",
          "TW",
          "TJ",
          "TZ",
          "TH",
          "CD",
          "TL",
          "TG",
          "TK",
          "TO",
          "TT",
          "TN",
          "TR",
          "TM",
          "TC",
          "TV",
          "UG",
          "UA",
          "AE",
          "GB",
          "US",
          "UM",
          "UY",
          "VI",
          "UZ",
          "VU",
          "VA",
          "VE",
          "VN",
          "WF",
          "EH",
          "YE",
          "ZM",
          "ZW"
        ]
      },
      "IsoCurrency": {
        "title": "IsoCurrency",
        "type": "string",
        "enum": [
          "AFN",
          "DZD",
          "ARS",
          "AMD",
          "AWG",
          "AUD",
          "AZN",
          "BSD",
          "BHD",
          "THB",
          "PAB",
          "BBD",
          "BYR",
          "BZD",
          "BMD",
          "VEF",
          "BOB",
          "BRL",
          "BND",
          "BGN",
          "BIF",
          "CAD",
          "CVE",
          "KYD",
          "XOF",
          "XAF",
          "XPF",
          "CLP",
          "COP",
          "KMF",
          "CDF",
          "BAM",
          "NIO",
          "CRC",
          "HRK",
          "CUP",
          "CZK",
          "GMD",
          "DKK",
          "MKD",
          "DJF",
          "STD",
          "DOP",
          "VND",
          "XCD",
          "EGP",
          "SVC",
          "ETB",
          "EUR",
          "FKP",
          "FJD",
          "HUF",
          "GHS",
          "GIP",
          "HTG",
          "PYG",
          "GNF",
          "GYD",
          "HKD",
          "UAH",
          "ISK",
          "INR",
          "IRR",
          "IQD",
          "JMD",
          "JOD",
          "KES",
          "PGK",
          "LAK",
          "KWD",
          "MWK",
          "AOA",
          "MMK",
          "GEL",
          "LBP",
          "ALL",
          "HNL",
          "SLL",
          "LRD",
          "LYD",
          "SZL",
          "LSL",
          "MGA",
          "MYR",
          "MUR",
          "MXN",
          "MXV",
          "MDL",
          "MAD",
          "MZN",
          "BOV",
          "NGN",
          "ERN",
          "NAD",
          "NPR",
          "ANG",
          "ILS",
          "TWD",
          "NZD",
          "BTN",
          "KPW",
          "NOK",
          "PEN",
          "MRU",
          "PKR",
          "MOP",
          "TOP",
          "CUC",
          "UYU",
          "PHP",
          "GBP",
          "BWP",
          "QAR",
          "GTQ",
          "ZAR",
          "OMR",
          "KHR",
          "RON",
          "MVR",
          "IDR",
          "RUB",
          "RWF",
          "SHP",
          "SAR",
          "RSD",
          "SCR",
          "SGD",
          "SBD",
          "KGS",
          "SOS",
          "TJS",
          "SSP",
          "LKR",
          "SDG",
          "SRD",
          "SEK",
          "CHF",
          "SYP",
          "BDT",
          "WST",
          "TZS",
          "KZT",
          "TTD",
          "MNT",
          "TND",
          "TRY",
          "TMT",
          "AED",
          "UGX",
          "COU",
          "CLF",
          "UYI",
          "USD",
          "USN",
          "USS",
          "UZS",
          "VUV",
          "CHE",
          "CHW",
          "KRW",
          "YER",
          "JPY",
          "CNY",
          "ZMW",
          "ZWL",
          "PLN"
        ]
      },
      "IsoCurrencyAmount": {
        "title": "IsoCurrencyAmount",
        "type": "object",
        "required": [
          "minorCurrencyUnits",
          "currency"
        ],
        "properties": {
          "minorCurrencyUnits": {
            "description": "The amount in minor currency units (e.g. cents for AUD).",
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "description": "The currency of the given amount as a 3 letter ISO code.",
            "type": "string"
          }
        }
      },
      "IssuerCardBrand": {
        "title": "IssuerCardBrand",
        "type": "string",
        "enum": [
          "UATP",
          "Mastercard"
        ]
      },
      "IssuerSettlementType": {
        "title": "IssuerSettlementType",
        "description": "For issuer transactions, the mechanism used to settle with the merchant",
        "type": "string",
        "enum": [
          "open_loop",
          "closed_loop"
        ]
      },
      "Item": {
        "title": "Item",
        "type": "object",
        "required": [
          "amount",
          "description",
          "quantity"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The unit price for an item **in minor currency units**."
          },
          "description": {
            "description": "A free text description of the item",
            "type": "string"
          },
          "sku": {
            "description": "Optional SKU for item",
            "type": "string"
          },
          "quantity": {
            "description": "Quantity of the item ordered. Note this may be a decimal amount such as `1.5`",
            "type": "number"
          },
          "imageUrl": {
            "description": "Optional URL of a image of the item",
            "type": "string"
          }
        }
      },
      "JsonObject": {
        "title": "JsonObject",
        "type": "object"
      },
      "KeyPartialValue": {
        "title": "KeyPartialValue",
        "type": "object",
        "required": [
          "key",
          "partialValue"
        ],
        "properties": {
          "key": {
            "type": "string"
          },
          "partialValue": {
            "type": "string"
          }
        }
      },
      "KycAttemptResponse": {
        "title": "KycAttemptResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ConsumerCustomerKycResult"
          },
          {
            "$ref": "#/components/schemas/OrganisationDelegateKycResult"
          }
        ]
      },
      "KycConsumerCustomer": {
        "title": "KycConsumerCustomer",
        "type": "object",
        "required": [
          "KycConsumerCustomer"
        ],
        "properties": {
          "KycConsumerCustomer": {
            "$ref": "#/components/schemas/KycConsumerCustomer1"
          }
        }
      },
      "KycConsumerCustomer1": {
        "title": "KycConsumerCustomer",
        "type": "object",
        "required": [
          "emailAddress",
          "phoneNumber",
          "ipAddress",
          "customerIdentification",
          "isCustomerVerified"
        ],
        "properties": {
          "emailAddress": {
            "description": "The customer's email address.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "The customer's phone number.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "ipAddress": {
            "description": "IP address that the customer is operating from.",
            "type": "string"
          },
          "customerIdentification": {
            "$ref": "#/components/schemas/CustomerIdentificationMandatory"
          },
          "isCustomerVerified": {
            "description": "Whether the customer's email and phone number have already been verified by the merchant, for example via one-time-password or other 2FA means.",
            "type": "boolean"
          },
          "referenceCustomerId": {
            "description": "Identifier for the given customer in the source system.",
            "type": "string"
          }
        }
      },
      "KycPayTypeEligibility": {
        "title": "KycPayTypeEligibility",
        "type": "object",
        "required": [
          "eligibility"
        ],
        "properties": {
          "eligibility": {
            "$ref": "#/components/schemas/CustomerIdentificationOutcome"
          },
          "idDocOptions": {
            "description": "For eligibility = IdWithDocument, details which ID document options are allowed",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdDocOption"
            }
          },
          "message": {
            "description": "An explanatory message associated with error conditions",
            "type": "string"
          }
        }
      },
      "LimeAddress": {
        "title": "LimeAddress",
        "description": "Billing address for the merchant as it will appear on fee invoices for gross settlement merchants.",
        "type": "object",
        "required": [
          "streetNumber",
          "streetName",
          "streetType",
          "suburb",
          "postalCode",
          "country"
        ],
        "properties": {
          "unitNumber": {
            "type": "string"
          },
          "streetNumber": {
            "type": "string"
          },
          "streetName": {
            "type": "string"
          },
          "streetType": {
            "type": "string"
          },
          "suburb": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "postalCode": {
            "examples": [
              2000
            ],
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/Country"
          }
        }
      },
      "LineItem": {
        "title": "LineItem",
        "type": "object",
        "required": [
          "entryType",
          "description",
          "netAmount",
          "taxAmount",
          "totalAmount",
          "originalAmount"
        ],
        "properties": {
          "entryType": {
            "$ref": "#/components/schemas/EntryType1"
          },
          "description": {
            "description": "Description of the statement line item",
            "type": "string"
          },
          "netAmount": {
            "description": "Amount before tax in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "taxAmount": {
            "description": "Tax amount in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "totalAmount": {
            "description": "Total amount including tax in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "taxRate": {
            "description": "The tax rate applied to the line item represented as a rate. For instance, 0.1 represents 10% tax.",
            "type": "number"
          },
          "taxType": {
            "description": "Name for the tax being applied.",
            "type": "string"
          },
          "originalAmount": {
            "$ref": "#/components/schemas/FxRateConversion",
            "description": "If the transaction was received in a currency other than the settlement currency, this includes details of how it was converted."
          }
        }
      },
      "LinkCustomerToDelegate": {
        "title": "LinkCustomerToDelegate",
        "type": "object",
        "required": [
          "LinkCustomerToDelegate"
        ],
        "properties": {
          "LinkCustomerToDelegate": {
            "$ref": "#/components/schemas/LinkCustomerToDelegate1"
          }
        }
      },
      "LinkCustomerToDelegate1": {
        "title": "LinkCustomerToDelegate",
        "description": "Link this customer delegate with the given merchant customer. Payment sources saved against a delegate will be available when signing in on behalf of any customers the delegate is linked to.",
        "type": "object",
        "required": [
          "customerId"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for the customer",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          }
        }
      },
      "LoanAccess": {
        "title": "LoanAccess",
        "type": "object",
        "required": [
          "loanId"
        ],
        "properties": {
          "loanId": {
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          }
        }
      },
      "LoanBalances": {
        "title": "LoanBalances",
        "type": "object",
        "required": [
          "availableBalance",
          "usedBalance",
          "reservedBalance",
          "pendingBalance",
          "accountLimit"
        ],
        "properties": {
          "availableBalance": {
            "description": "The amount available for draw down from the loan in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "usedBalance": {
            "description": "The amount currently outstanding in customer statements in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "reservedBalance": {
            "description": "Loan transactions that have yet to appear on a customer statement in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "pendingBalance": {
            "description": "Repayments in minor currency units where the corresponding funds have yet to settle",
            "type": "integer",
            "format": "int64"
          },
          "accountLimit": {
            "description": "The maximum amount that can be owed at any point",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "LoanMasterAgreementBalances": {
        "title": "LoanMasterAgreementBalances",
        "type": "object",
        "required": [
          "availableBalance",
          "usedBalance"
        ],
        "properties": {
          "availableBalance": {
            "description": "The amount available for draw down from the loan master agreement in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "usedBalance": {
            "description": "The amount currently reserved or loaned out from this loan master agreement in minor currency units",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "LoanProductType": {
        "title": "LoanProductType",
        "type": "string",
        "enum": [
          "TradingAccount"
        ]
      },
      "LoanRole": {
        "title": "LoanRole",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CardUser"
          },
          {
            "$ref": "#/components/schemas/FinanceUser"
          },
          {
            "$ref": "#/components/schemas/SuperAdmin"
          }
        ]
      },
      "LoanStatementEntry": {
        "title": "LoanStatementEntry",
        "type": "object",
        "required": [
          "entryTimestamp",
          "entryDescription",
          "loanId",
          "netTotal",
          "taxTotal",
          "insuranceTotal",
          "billingAmountTotal",
          "originalBillingAmountTotal",
          "currency",
          "acquiringMerchantDetails",
          "supplierDetails",
          "lineItems",
          "entryType"
        ],
        "properties": {
          "entryTimestamp": {
            "description": "When the statement line was recorded",
            "type": "string",
            "format": "date-time"
          },
          "entryDescription": {
            "description": "A human-readable description of the statement entry",
            "type": "string"
          },
          "loanStatementId": {
            "description": "The system identifier of the loan statement this entry is included in. Only empty if the statement has not yet been issued.",
            "examples": [
              "lstmt_dY_VYlYOQ5XP4zJn"
            ],
            "type": "string"
          },
          "referenceStatementId": {
            "description": "Unique identifier visible to the customer for the loan statement.",
            "type": "string"
          },
          "loanId": {
            "description": "The system identifier for the loan",
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          },
          "netTotal": {
            "description": "Sum of all line items before tax and insurance, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "taxTotal": {
            "description": "Combined tax from all line items, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "taxRate": {
            "description": "The tax rate applied to the line item represented as a rate. For instance, 0.1 represents 10% tax.",
            "type": "number"
          },
          "taxType": {
            "description": "Name for the tax being applied.",
            "type": "string"
          },
          "insuranceTotal": {
            "description": "Combination of all insurance-related line items, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "billingAmountTotal": {
            "description": "Full combined amount that contributes to the statement due to this entry, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "originalBillingAmountTotal": {
            "$ref": "#/components/schemas/FxRateConversion",
            "description": "Details of the fx conversion from the charge currency to the billing currency."
          },
          "currency": {
            "description": "Currency of the statement amounts.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "transactionId": {
            "description": "The acquiring transaction associated with entry, if any",
            "type": "string"
          },
          "issuerTransactionId": {
            "description": "The issuer transaction associated with entry, if any",
            "examples": [
              "itxn_pfWW83vesouNmmHB"
            ],
            "type": "string"
          },
          "issuerSettlementType": {
            "$ref": "#/components/schemas/IssuerSettlementType"
          },
          "digitalCardDetails": {
            "$ref": "#/components/schemas/DigitalCardDetails"
          },
          "acquiringMerchantDetails": {
            "$ref": "#/components/schemas/MerchantDetails"
          },
          "supplierDetails": {
            "$ref": "#/components/schemas/SupplierDetails"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata associated with this entry, if any"
          },
          "lineItems": {
            "description": "Statement line items associated with this entry.",
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/LineItem"
            }
          },
          "entryType": {
            "$ref": "#/components/schemas/EntryType2"
          },
          "entryId": {
            "description": "System identifier specific to the given entry type",
            "type": "string"
          }
        }
      },
      "LoanStatementReport": {
        "title": "LoanStatementReport",
        "type": "object",
        "required": [
          "currency",
          "totalPages",
          "totalRecords"
        ],
        "properties": {
          "currency": {
            "description": "Three-letter ISO currency code, in uppercase. See https://www.iso.org/iso-4217-currency-codes.html",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "entries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoanStatementEntry"
            }
          },
          "totalPages": {
            "type": "integer",
            "format": "int64"
          },
          "totalRecords": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "LoanStatementReportMediaType": {
        "title": "LoanStatementReportMediaType",
        "type": "string",
        "enum": [
          "PDF",
          "CSV",
          "XML"
        ]
      },
      "LoanStatementSummaryResponse": {
        "title": "LoanStatementSummaryResponse",
        "type": "object",
        "required": [
          "loanStatementId",
          "referenceStatementId",
          "loanId",
          "loanAccountName",
          "loanTimeZone",
          "billerName",
          "billerTaxId",
          "billerAddress",
          "billerPhoneNumber",
          "borrowerMerchantId",
          "statementStartDate",
          "statementStartAt",
          "statementEndDate",
          "statementEndAt",
          "billingDate",
          "dueDate",
          "settlementCurrency",
          "netAmount",
          "insuranceAmount",
          "taxAmount",
          "billedAmount",
          "paidAmount",
          "feeAmount",
          "lateFeeAmount",
          "outstandingAmount",
          "status",
          "totalEntryCount",
          "createdAt"
        ],
        "properties": {
          "loanStatementId": {
            "description": "The system identifier of the loan statement.",
            "examples": [
              "lstmt_dY_VYlYOQ5XP4zJn"
            ],
            "type": "string"
          },
          "referenceStatementId": {
            "description": "Unique identifier visible to the customer for the loan statement.",
            "type": "string"
          },
          "loanId": {
            "description": "The system identifier for the loan",
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          },
          "referenceLoanId": {
            "description": "A reference provided by the applicant to identify this loan.",
            "type": "string"
          },
          "loanAccountName": {
            "description": "Account name associated with the loan",
            "type": "string"
          },
          "loanProductType": {
            "$ref": "#/components/schemas/LoanProductType"
          },
          "loanMetadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata associated with this loan, if any"
          },
          "loanTimeZone": {
            "description": "Timezone of loan used to determine statement time windows and for reporting.",
            "examples": [
              "Australia/Sydney"
            ],
            "type": "string"
          },
          "customerId": {
            "description": "The customer system identifier in scope for the given loan, if any",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer.",
            "type": "string"
          },
          "customerName": {
            "description": "The name of the customer in scope for the given loan, if any",
            "type": "string"
          },
          "customerTaxId": {
            "description": "The tax id for organisational customers, if any",
            "type": "string"
          },
          "customerMetadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata associated with this organisational customer, if any"
          },
          "customerAddress": {
            "$ref": "#/components/schemas/BusinessAddress",
            "description": "Business address associated with this organisational customer, if any"
          },
          "billerName": {
            "description": "Legal name of the company issuing the loan statement",
            "type": "string"
          },
          "billerTaxId": {
            "description": "Tax id of the company issuing the loan statement",
            "type": "string"
          },
          "billerAddress": {
            "$ref": "#/components/schemas/BusinessAddress",
            "description": "Address of the company issuing the loan statement"
          },
          "billerSupportEmailAddress": {
            "description": "Support email address for the company issuing the loan statement",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "billerPhoneNumber": {
            "description": "Phone number for the company issuing the loan statement",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "borrowerMerchantId": {
            "description": "The merchant in scope for the given loan",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "statementStartDate": {
            "description": "The first day of loan entries included in the loan statement.",
            "type": "string",
            "format": "date"
          },
          "statementStartAt": {
            "description": "The start of the first day of loan entries included in the loan statement.",
            "type": "string",
            "format": "date-time"
          },
          "statementEndDate": {
            "description": "The last day of loan entries included in the loan statement.",
            "type": "string",
            "format": "date"
          },
          "statementEndAt": {
            "description": "The end of the last day of loan entries included in the loan statement.",
            "type": "string",
            "format": "date-time"
          },
          "billingDate": {
            "description": "When was the loan statement issued.",
            "type": "string",
            "format": "date"
          },
          "dueDate": {
            "description": "When is repayment due for this statement.",
            "type": "string",
            "format": "date"
          },
          "settlementCurrency": {
            "description": "The currency used in this statement",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "netAmount": {
            "description": "Sum of all non-insurance entries, before tax, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "insuranceAmount": {
            "description": "Sum of all insurance entries, before tax, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "taxAmount": {
            "description": "Sum of tax amount over all entries, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "billedAmount": {
            "description": "Total amount due on the statement (excluding late fees), in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "paidAmount": {
            "description": "How much has already been paid towards this statement, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "feeAmount": {
            "description": "Total fees included in this statement (excluding late fees), in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "lateFeeAmount": {
            "description": "Amount owed due to late fees, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "lateFeeLineItem": {
            "$ref": "#/components/schemas/LineItem",
            "description": "Amount owed due to late fees, in minor currency units."
          },
          "outstandingAmount": {
            "description": "Total amount remaining to be paid against this statement including late fees, in minor currency units.",
            "type": "integer",
            "format": "int64"
          },
          "paymentEvents": {
            "description": "Events related to the payment of this statement.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentEvent"
            }
          },
          "status": {
            "$ref": "#/components/schemas/Status2"
          },
          "totalEntryCount": {
            "description": "Total number of entries in the loan statement.",
            "type": "integer",
            "format": "int64"
          },
          "createdAt": {
            "description": "When the statement was created.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "LoanSummaryResponse": {
        "title": "LoanSummaryResponse",
        "type": "object",
        "required": [
          "loanId",
          "loanAccountName",
          "timeZone",
          "loanProductId",
          "loanFacilityId",
          "borrowerMerchantId",
          "currency",
          "status",
          "specification",
          "loanBalances",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "loanId": {
            "description": "The system identifier for the loan",
            "examples": [
              "loan_Ryu_FJI-Lnzv2FKY"
            ],
            "type": "string"
          },
          "referenceLoanId": {
            "description": "A reference provided by the applicant to identify this loan.",
            "type": "string"
          },
          "loanAccountName": {
            "description": "Account name associated with the loan",
            "type": "string"
          },
          "loanMetadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata associated with this loan, if any"
          },
          "timeZone": {
            "description": "Timezone of loan used to determine statement time windows and for reporting.",
            "examples": [
              "Australia/Sydney"
            ],
            "type": "string"
          },
          "loanProductId": {
            "description": "The system identifier for the loan product for this loan",
            "examples": [
              "lprod_aDBb8K8joaslbeBS"
            ],
            "type": "string"
          },
          "loanFacilityId": {
            "description": "The system identifier for the loan facility providing the loan product",
            "examples": [
              "lfac_BzGAYjwPHc6Ca7J4"
            ],
            "type": "string"
          },
          "borrowerMerchantId": {
            "description": "The merchant associated with the borrower",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "borrowerMarketplaceId": {
            "description": "The marketplace associated with the merchant in scope, if any",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "loanMasterAgreementId": {
            "description": "The master agreement linked to this loan, if any",
            "examples": [
              "lma_c8gbRC3H2NFV0Lg5"
            ],
            "type": "string"
          },
          "currency": {
            "description": "The currency of the loan",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "billingPaymentSourceId": {
            "description": "Payment source used for automated payments of loan statements, if any.",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Status1",
            "description": "The status of the loan product"
          },
          "specification": {
            "$ref": "#/components/schemas/Spec"
          },
          "loanBalances": {
            "$ref": "#/components/schemas/LoanBalances"
          },
          "loanMasterAgreementBalances": {
            "$ref": "#/components/schemas/LoanMasterAgreementBalances"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "LogicError": {
        "title": "LogicError",
        "type": "object",
        "required": [
          "message"
        ],
        "properties": {
          "message": {
            "type": "string"
          }
        }
      },
      "LookupAliasResponse": {
        "title": "LookupAliasResponse",
        "type": "object",
        "required": [
          "displayName"
        ],
        "properties": {
          "displayName": {
            "description": "Display name linked to this alias",
            "type": "string"
          }
        }
      },
      "ManualCardToken": {
        "title": "ManualCardToken",
        "type": "object",
        "required": [
          "ManualCardToken"
        ],
        "properties": {
          "ManualCardToken": {
            "$ref": "#/components/schemas/ManualCardToken1"
          }
        }
      },
      "ManualCardToken1": {
        "title": "ManualCardToken",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "expiryDate",
          "last4",
          "brand",
          "bin",
          "funding",
          "country"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "last4": {
            "type": "string"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding1"
          },
          "bin": {
            "type": "string"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding2"
          },
          "country": {
            "$ref": "#/components/schemas/IsoCountry"
          }
        }
      },
      "ManualPaymentDetails": {
        "title": "ManualPaymentDetails",
        "type": "object",
        "required": [
          "token",
          "magicLink",
          "orderId"
        ],
        "properties": {
          "token": {
            "description": "A token, valid for 28 days, that authorises the holder to pay for this invoice.",
            "type": "string"
          },
          "magicLink": {
            "description": "URL to load a UI to manually pay for the given merchant invoice.",
            "type": "string"
          },
          "orderId": {
            "description": "System unique identifier for the merchant order representing the payment of this invoice.",
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          }
        }
      },
      "ManualPaymentMarked": {
        "title": "ManualPaymentMarked",
        "type": "object",
        "required": [
          "timestamp",
          "amount",
          "user"
        ],
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          },
          "user": {
            "type": "string"
          }
        }
      },
      "Map_V": {
        "title": "Map_V",
        "type": "object",
        "additionalProperties": {
          "type": "string"
        }
      },
      "MarketplaceApiKey": {
        "title": "MarketplaceApiKey",
        "type": "object",
        "required": [
          "MarketplaceApiKey"
        ],
        "properties": {
          "MarketplaceApiKey": {
            "$ref": "#/components/schemas/MarketplaceApiKey1"
          }
        }
      },
      "MarketplaceApiKey1": {
        "title": "MarketplaceApiKey",
        "type": "object",
        "required": [
          "marketplaceId"
        ],
        "properties": {
          "marketplaceId": {
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          }
        }
      },
      "MarketplaceCustomerResponse": {
        "title": "MarketplaceCustomerResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ConsumerMarketplaceCustomer"
          },
          {
            "$ref": "#/components/schemas/OrganisationMarketplaceCustomer"
          }
        ]
      },
      "MarketplaceResponse": {
        "title": "MarketplaceResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/StandardMarketplace"
          }
        ]
      },
      "MatchStatus": {
        "title": "MatchStatus",
        "type": "string",
        "enum": [
          "Match",
          "PartialMatch",
          "NoMatch",
          "AccountClosed",
          "Failed"
        ]
      },
      "MaxLoanRequest": {
        "title": "MaxLoanRequest",
        "type": "object",
        "required": [
          "currency"
        ],
        "properties": {
          "currency": {
            "description": "Currency to request max loan amount for",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "payPlanVariant": {
            "$ref": "#/components/schemas/PayPlanVariant",
            "description": "The pay plan variant to be used - defaults to the first configured value for the merchant or payplan_fortnight_25_25_25_25"
          }
        }
      },
      "MaxLoanResponse": {
        "title": "MaxLoanResponse",
        "type": "object",
        "required": [
          "amount",
          "summary"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The maximum loan amount based on the customer's loan eligibility analysis"
          },
          "summary": {
            "description": "Gives further information about the customer's loan eligibility analysis",
            "type": "string"
          }
        }
      },
      "MerchantApplepayDetails": {
        "title": "MerchantApplepayDetails",
        "description": "Details of the merchant-specific settings for which Apple Pay will process payments for this merchant.",
        "type": "object",
        "required": [
          "encryptTo",
          "partnerInternalMerchantIdentifier",
          "partnerMerchantName"
        ],
        "properties": {
          "domainNames": {
            "description": "A list of fully qualified domain names for which Apple Pay will process payments for this merchant.",
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "encryptTo": {
            "description": "encryptTo TODO write something",
            "type": "string"
          },
          "merchantUrl": {
            "description": "merchantUrl TODO write something",
            "type": "string"
          },
          "partnerInternalMerchantIdentifier": {
            "description": "partnerInternalMerchantIdentifier TODO write something",
            "type": "string"
          },
          "partnerMerchantName": {
            "description": "partnerMerchantName TODO write something",
            "type": "string"
          }
        }
      },
      "MerchantApplepayDetailsResponse": {
        "title": "MerchantApplepayDetailsResponse",
        "type": "object",
        "properties": {
          "details": {
            "$ref": "#/components/schemas/MerchantApplepayDetails"
          }
        }
      },
      "MerchantBalances": {
        "title": "MerchantBalances",
        "type": "object",
        "required": [
          "currency",
          "available",
          "inTransit",
          "pending"
        ],
        "properties": {
          "currency": {
            "description": "The currency of the balances as a 3 letter ISO code.",
            "type": "string"
          },
          "available": {
            "description": "The funds in minor currency units available for payout.",
            "type": "integer",
            "format": "int64"
          },
          "inTransit": {
            "description": "The funds in minor currency units deducted from the account that are on their way to the merchant's bank account.",
            "type": "integer",
            "format": "int64"
          },
          "pending": {
            "description": "The funds in minor currency units accumulating in the account that are not yet cleared for payout.",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "MerchantBranding": {
        "title": "MerchantBranding",
        "type": "object",
        "properties": {
          "iconUri": {
            "description": "Fully qualified URI to an image file to use for the merchant icon. Must be an https link.",
            "type": "string"
          },
          "logoUri": {
            "description": "Fully qualified URI to an image file to use for the merchant logo. Must be an https link.",
            "type": "string"
          },
          "logoAltText": {
            "description": "Alternative text to show if the logo image cannot loaded.",
            "type": "string"
          },
          "primaryColor": {
            "description": "Override the UI theme's primary color used in customer facing components.",
            "examples": [
              "#A946BD"
            ],
            "type": "string"
          }
        }
      },
      "MerchantCustomerResponse": {
        "title": "MerchantCustomerResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ConsumerCustomer"
          },
          {
            "$ref": "#/components/schemas/OrganisationCustomer"
          }
        ]
      },
      "MerchantDashboardStatus": {
        "title": "MerchantDashboardStatus",
        "type": "string",
        "enum": [
          "Pending",
          "Active",
          "Suspended"
        ]
      },
      "MerchantDetails": {
        "title": "MerchantDetails",
        "type": "object",
        "properties": {
          "name": {
            "description": "Business name of the merchant the transaction is associated with.",
            "type": "string"
          },
          "taxId": {
            "description": "Optional taxId of the merchant associated with this transaction.",
            "type": "string"
          },
          "postCode": {
            "description": "Optional post code of the merchant associated with this transaction.",
            "type": "string"
          },
          "merchantCategoryCode": {
            "description": "The merchant MCC",
            "type": "string"
          },
          "iataNumber": {
            "description": "IATA 3-Digit Airline Numeric Code for when the merchant is an airline.",
            "type": "string"
          },
          "country": {
            "$ref": "#/components/schemas/IsoCountry",
            "description": "Optional city of the merchant associated with this transaction."
          },
          "city": {
            "description": "Optional city of the merchant associated with this transaction.",
            "type": "string"
          },
          "emailAddress": {
            "description": "Optional email of the merchant associated with this transaction.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Optional phone number in E164 Format of the merchant associated with this transaction.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          }
        }
      },
      "MerchantFileResponse": {
        "title": "MerchantFileResponse",
        "type": "object",
        "required": [
          "fileId",
          "merchantId",
          "category",
          "docType",
          "fileName",
          "fileType",
          "fileSizeInMB",
          "fileSizeInKB",
          "createdAt"
        ],
        "properties": {
          "fileId": {
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "merchantId": {
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "category": {
            "$ref": "#/components/schemas/FileCategory"
          },
          "docType": {
            "$ref": "#/components/schemas/DocumentType"
          },
          "fileName": {
            "type": "string"
          },
          "fileType": {
            "$ref": "#/components/schemas/FileType"
          },
          "fileSizeInMB": {
            "type": "integer",
            "format": "int64"
          },
          "fileSizeInKB": {
            "type": "integer",
            "format": "int64"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "MerchantFileUploadResult": {
        "title": "MerchantFileUploadResult",
        "type": "object",
        "required": [
          "limeFileId"
        ],
        "properties": {
          "limeFileId": {
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          }
        }
      },
      "MerchantInvoiceBillingAddress": {
        "title": "MerchantInvoiceBillingAddress",
        "type": "object",
        "required": [
          "line1",
          "postalCode",
          "country"
        ],
        "properties": {
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "postalCode": {
            "type": "string"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "MerchantInvoiceBillingDetails": {
        "title": "MerchantInvoiceBillingDetails",
        "type": "object",
        "required": [
          "businessName",
          "taxId",
          "billingEmailAddress",
          "billingPhoneNumber",
          "billingAddress"
        ],
        "properties": {
          "businessName": {
            "type": "string"
          },
          "taxId": {
            "type": "string"
          },
          "billingEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "billingPhoneNumber": {
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/MerchantInvoiceBillingAddress"
          }
        }
      },
      "MerchantInvoiceCategory": {
        "title": "MerchantInvoiceCategory",
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayInFullBankTransfer"
          },
          {
            "$ref": "#/components/schemas/PayInFullCardPayment"
          },
          {
            "$ref": "#/components/schemas/PayInFullDirectDebit"
          },
          {
            "$ref": "#/components/schemas/PayInFullPayTo"
          },
          {
            "$ref": "#/components/schemas/PlanPayment"
          },
          {
            "$ref": "#/components/schemas/TransactionTransfer"
          }
        ]
      },
      "MerchantInvoiceDetails": {
        "title": "MerchantInvoiceDetails",
        "type": "object",
        "required": [
          "summary",
          "billingDetails"
        ],
        "properties": {
          "summary": {
            "$ref": "#/components/schemas/MerchantInvoiceSummary",
            "description": "Basic summary of the invoice, as you would get when querying invoices."
          },
          "billingDetails": {
            "$ref": "#/components/schemas/MerchantInvoiceBillingDetails"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/TransactionPaymentMethod"
          },
          "summaryItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MerchantInvoiceSummaryItem"
            }
          },
          "timelines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MerchantInvoiceTimeLine"
            }
          },
          "manualPaymentDetails": {
            "$ref": "#/components/schemas/ManualPaymentDetails"
          }
        }
      },
      "MerchantInvoiceEventType": {
        "title": "MerchantInvoiceEventType",
        "type": "string",
        "enum": [
          "InvoiceIssued",
          "PaymentOutstanding",
          "PaymentAccepted",
          "PaymentOverdue",
          "PaymentFailed",
          "PaymentSucceeded",
          "PaymentDisputed",
          "PaymentCancelled"
        ]
      },
      "MerchantInvoiceItemType": {
        "title": "MerchantInvoiceItemType",
        "type": "string",
        "enum": [
          "dispute_fee",
          "dispute_fee_reversal",
          "manual_top_up",
          "manual_top_up_reversal",
          "overdue_invoice_fee",
          "pay_in_full_fee",
          "payment_fee_reversal",
          "pay_plan_fee",
          "transaction_transfer_fee_reversal",
          "other"
        ]
      },
      "MerchantInvoiceStatus": {
        "title": "MerchantInvoiceStatus",
        "type": "string",
        "enum": [
          "draft",
          "outstanding",
          "overdue",
          "accepted",
          "paid",
          "cancelled"
        ]
      },
      "MerchantInvoiceSummary": {
        "title": "MerchantInvoiceSummary",
        "type": "object",
        "required": [
          "invoiceId",
          "invoiceReference",
          "currency",
          "invoiceStartDate",
          "invoiceEndDate",
          "invoiceAmount",
          "paidAmount",
          "dueDate",
          "merchantId",
          "merchantBusinessName",
          "status",
          "summary",
          "createdAt"
        ],
        "properties": {
          "invoiceId": {
            "description": "System unique identifier for the invoice.",
            "examples": [
              "minv_acRmJn-v0wKZvGQp"
            ],
            "type": "string"
          },
          "invoiceReference": {
            "description": "Unique reference for this invoice that can be included on manually generated payments.",
            "examples": [
              "fCRLRpvIhvCC9Fkz"
            ],
            "type": "string"
          },
          "currency": {
            "description": "The currency of the invoice as a 3 letter ISO code.",
            "type": "string"
          },
          "invoiceStartDate": {
            "description": "The start of the date range included in the invoice.",
            "type": "string",
            "format": "date"
          },
          "invoiceEndDate": {
            "description": "The end of the date range included in the invoice.",
            "type": "string",
            "format": "date"
          },
          "invoiceAmount": {
            "description": "The invoice amount **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "paidAmount": {
            "description": "The amount credited towards the invoice **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "issuedOn": {
            "description": "The date the invoice was issued to the merchant.",
            "type": "string",
            "format": "date"
          },
          "dueDate": {
            "description": "The date the invoice is due for payment.",
            "type": "string",
            "format": "date"
          },
          "merchantId": {
            "description": "System unique identifier for the merchant issued the invoice.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "merchantBusinessName": {
            "description": "Business name for the merchant issued the invoice.",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/MerchantInvoiceStatus",
            "description": "Status of the invoice."
          },
          "summary": {
            "description": "Summary of the contents of the invoice.",
            "type": "string"
          },
          "createdAt": {
            "description": "When the invoice was created.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "MerchantInvoiceSummaryItem": {
        "title": "MerchantInvoiceSummaryItem",
        "type": "object",
        "required": [
          "itemType",
          "count",
          "taxTotal",
          "feeTotal"
        ],
        "properties": {
          "itemType": {
            "$ref": "#/components/schemas/MerchantInvoiceItemType"
          },
          "category": {
            "$ref": "#/components/schemas/MerchantInvoiceCategory"
          },
          "categoryLabel": {
            "type": "string"
          },
          "unitPrice": {
            "type": "string"
          },
          "count": {
            "type": "integer",
            "format": "int64"
          },
          "totalTransactionValue": {
            "type": "integer",
            "format": "int64"
          },
          "taxTotal": {
            "type": "integer",
            "format": "int64"
          },
          "feeTotal": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "MerchantInvoiceTimeLine": {
        "title": "MerchantInvoiceTimeLine",
        "type": "object",
        "required": [
          "eventType",
          "eventTime"
        ],
        "properties": {
          "eventType": {
            "$ref": "#/components/schemas/MerchantInvoiceEventType"
          },
          "eventTime": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          },
          "identifier": {
            "type": "string"
          }
        }
      },
      "MerchantOnboardingFileUploadRequest": {
        "title": "MerchantOnboardingFileUploadRequest",
        "type": "object",
        "required": [
          "docType",
          "file"
        ],
        "properties": {
          "docType": {
            "$ref": "#/components/schemas/DocumentType"
          },
          "file": {
            "type": "string",
            "format": "binary"
          }
        }
      },
      "MerchantPayoutStatus": {
        "title": "MerchantPayoutStatus",
        "type": "string",
        "enum": [
          "Enabled",
          "Disabled"
        ]
      },
      "MerchantResponse": {
        "title": "MerchantResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ServiceProviderMerchant"
          },
          {
            "$ref": "#/components/schemas/StandardMerchant"
          }
        ]
      },
      "MerchantSecretToken": {
        "title": "MerchantSecretToken",
        "type": "object",
        "required": [
          "MerchantSecretToken"
        ],
        "properties": {
          "MerchantSecretToken": {
            "$ref": "#/components/schemas/MerchantSecretToken1"
          }
        }
      },
      "MerchantSecretToken1": {
        "title": "MerchantSecretToken",
        "type": "object",
        "required": [
          "merchantId"
        ],
        "properties": {
          "merchantId": {
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          }
        }
      },
      "MetadataTemplate": {
        "title": "MetadataTemplate",
        "type": "object",
        "properties": {
          "validations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldValidatorEntry"
            }
          }
        }
      },
      "MimeEmail": {
        "title": "MimeEmail",
        "type": "object",
        "required": [
          "contents"
        ],
        "properties": {
          "contents": {
            "type": "string"
          }
        }
      },
      "Monthly": {
        "title": "Monthly",
        "type": "object",
        "required": [
          "Monthly"
        ],
        "properties": {
          "Monthly": {
            "$ref": "#/components/schemas/Monthly1"
          }
        }
      },
      "Monthly1": {
        "title": "Monthly",
        "type": "object",
        "required": [
          "issueDayOfMonth"
        ],
        "properties": {
          "issueDayOfMonth": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "NetworkToken": {
        "title": "NetworkToken",
        "type": "object",
        "required": [
          "NetworkToken"
        ],
        "properties": {
          "NetworkToken": {
            "$ref": "#/components/schemas/NetworkToken1"
          }
        }
      },
      "NetworkToken1": {
        "title": "NetworkToken",
        "description": "Payment tokens generated using wallets such as Apple Pay or Google Pay generate a network token based payment token.",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "networkType",
          "brand",
          "funding"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "networkType": {
            "$ref": "#/components/schemas/NetworkType"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding1"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding2"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "NetworkTokenDetails": {
        "title": "NetworkTokenDetails",
        "type": "object",
        "required": [
          "NetworkTokenDetails"
        ],
        "properties": {
          "NetworkTokenDetails": {
            "$ref": "#/components/schemas/NetworkTokenDetails1"
          }
        }
      },
      "NetworkTokenDetails1": {
        "title": "NetworkTokenDetails",
        "type": "object",
        "required": [
          "networkType",
          "brand"
        ],
        "properties": {
          "networkType": {
            "$ref": "#/components/schemas/NetworkType"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding1"
          },
          "country": {
            "type": "string"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding"
          }
        }
      },
      "NetworkType": {
        "title": "NetworkType",
        "type": "string",
        "enum": [
          "ApplePay",
          "GooglePay",
          "Unknown"
        ]
      },
      "Not": {
        "title": "Not",
        "type": "object",
        "required": [
          "criterion"
        ],
        "properties": {
          "criterion": {
            "$ref": "#/components/schemas/RuleCriterion"
          }
        }
      },
      "NotRequired": {
        "title": "NotRequired",
        "type": "object"
      },
      "NotSupported": {
        "title": "NotSupported",
        "type": "object",
        "properties": {
          "version": {
            "type": "string"
          },
          "info": {
            "type": "string"
          }
        }
      },
      "NothingToReport": {
        "title": "NothingToReport",
        "type": "object",
        "required": [
          "NothingToReport"
        ],
        "properties": {
          "NothingToReport": {
            "$ref": "#/components/schemas/NothingToReport1"
          }
        }
      },
      "NothingToReport1": {
        "title": "NothingToReport",
        "description": "Empty reply where no response data is applicable.",
        "type": "object"
      },
      "NzBankAccountIdentifier": {
        "title": "NzBankAccountIdentifier",
        "type": "object",
        "required": [
          "NzBankAccountIdentifier"
        ],
        "properties": {
          "NzBankAccountIdentifier": {
            "$ref": "#/components/schemas/NzBankAccountIdentifier1"
          }
        }
      },
      "NzBankAccountIdentifier1": {
        "title": "NzBankAccountIdentifier",
        "type": "object",
        "required": [
          "accountNumber"
        ],
        "properties": {
          "accountNumber": {
            "description": "Account number, 15 or 16 digits.",
            "type": "string"
          }
        }
      },
      "OfferDetails": {
        "title": "OfferDetails",
        "description": "Details of the pay plan offered to the customer",
        "type": "object",
        "required": [
          "merchantId",
          "customerId",
          "isCounterOffer",
          "threeDSecureRequired",
          "createdAt"
        ],
        "properties": {
          "merchantId": {
            "description": "System unique identifier for the merchant the pay plan was created for.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "customerId": {
            "description": "System unique identifier for the merchant customer who owns the pay plan.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "isCounterOffer": {
            "description": "Indicates that this is a revision (counter-offer) of a payment schedule proposed by the merchant customer.",
            "type": "boolean"
          },
          "threeDSecureRequired": {
            "description": "When true, 3DS must be requested when paying for the order.",
            "type": "boolean"
          },
          "payPlanParameters": {
            "$ref": "#/components/schemas/PayPlanParameters",
            "description": "The parameters of the offered pay plan. If empty, the pay plan was declined outright."
          },
          "createdAt": {
            "description": "When the time limited offer was generated.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "OnboardingErrorCode": {
        "title": "OnboardingErrorCode",
        "type": "string",
        "enum": [
          "InvalidAddress",
          "DocumentAddressMismatch",
          "DocumentAddressMissing",
          "DocumentCountryNotSupported",
          "DocumentDobMismatch",
          "DocumentDuplicateType",
          "DocumentExpired",
          "DocumentFailedCopy",
          "DocumentFailedGreyscale",
          "DocumentFailedOther",
          "DocumentFraudulent",
          "DocumentIdNumberMismatch",
          "DocumentIdNumberMissing",
          "DocumentIncomplete",
          "DocumentInvalid",
          "DocumentIssueOrExpiryDateMissing",
          "DocumentMissingBack",
          "DocumentMissingFront",
          "DocumentSameFrontBack",
          "DocumentNameMismatch",
          "DocumentNameMissing",
          "DocumentNationalityMismatch",
          "DocumentNotReadable",
          "DocumentNotSigned",
          "DocumentNotUploaded",
          "DocumentPhotoMismatch",
          "DocumentTooLarge",
          "DocumentTypeNotSupported",
          "FailedAddressMatch",
          "FailedBusinessIecNumber",
          "FailedDocumentMatch",
          "FailedIdNumberMatch",
          "FailedKeyedIdentity",
          "FailedKeyedMatch",
          "FailedNameMatch",
          "FailedOther",
          "FailedTaxIdMatch",
          "FailedTaxIdNotIssued",
          "InvalidTaxId",
          "RequiresAdditionalMemorandumOfAssociations",
          "MissingExecutives",
          "MissingOwners",
          "MissingDirectors",
          "MissingOwnerOrExecutive",
          "MissingIndividual",
          "PersonInformationMissing",
          "MissingGatewayPersonAccount",
          "InvalidPersonAge",
          "MissingBankAccount",
          "MerchantGatewayAccountMissing",
          "InvalidBusinessName",
          "CompanyTypeMissing",
          "PartnershipAgreementDocMissing",
          "TrustDeedDocMissing",
          "InvalidPostalCode",
          "InvalidState",
          "InvalidCity",
          "InvalidPhoneNum",
          "InvalidTimeZone",
          "InvalidWebsite",
          "InvalidSupportSite",
          "InvalidCardStatementName",
          "InvalidSmsSenderName",
          "InvalidBrandName",
          "InvalidContactEmail",
          "InvalidSupportEmail",
          "InvalidSlug",
          "DocumentBackNotNeeded",
          "DriverLicenceMissing",
          "PassportMissing",
          "IdMissing",
          "MultipleIdsFound",
          "UnsupportedIdType",
          "DriverLicenceStateMissing",
          "DriverLicenceDocumentNumberMissing",
          "DriverLicenceVersionNumberMissing",
          "InvalidNzDriverLicenceVersion",
          "DriverLicenceStateNotNeeded",
          "PassportExpired",
          "InvalidBusinessContactFirstName",
          "InvalidBusinessContactLastName",
          "InvalidBusinessCountry",
          "InvalidBusinessAddress",
          "InvalidPersonAddress",
          "InvalidFirstName",
          "InvalidLastName",
          "InvalidTradeType",
          "InvalidTradeLicence",
          "MerchantIsNotActive",
          "MerchantAlreadyVerified",
          "MerchantStateInvalid",
          "IndustryMissing",
          "UnknownError"
        ]
      },
      "OnlineOrder": {
        "title": "OnlineOrder",
        "type": "object",
        "required": [
          "OnlineOrder"
        ],
        "properties": {
          "OnlineOrder": {
            "$ref": "#/components/schemas/OnlineOrder1"
          }
        }
      },
      "OnlineOrder1": {
        "title": "OnlineOrder",
        "type": "object",
        "required": [
          "order"
        ],
        "properties": {
          "order": {
            "$ref": "#/components/schemas/OrderResponse",
            "description": "Details of the generated order"
          }
        }
      },
      "OnlineOrderTypeDetails": {
        "title": "OnlineOrderTypeDetails",
        "type": "object",
        "required": [
          "OnlineOrderTypeDetails"
        ],
        "properties": {
          "OnlineOrderTypeDetails": {
            "$ref": "#/components/schemas/OnlineOrderTypeDetails1"
          }
        }
      },
      "OnlineOrderTypeDetails1": {
        "title": "OnlineOrderTypeDetails",
        "type": "object"
      },
      "Or": {
        "title": "Or",
        "type": "object",
        "required": [
          "criteria"
        ],
        "properties": {
          "criteria": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/RuleCriterion"
            }
          }
        }
      },
      "OrderCustomField": {
        "title": "OrderCustomField",
        "description": "Metadata fields we can expect to be included on orders. These will automatically be included in manual payments, payment and payout reports for Abacus merchants.",
        "type": "object",
        "required": [
          "key",
          "label",
          "required",
          "visibleForCustomer"
        ],
        "properties": {
          "key": {
            "description": "metadata key value as added to the merchant order and used in reports",
            "type": "string"
          },
          "label": {
            "description": "Human readable label for custom field to show on pay by link order form and dashboards.",
            "type": "string"
          },
          "required": {
            "description": "If true, value needs to be provided either by the merchant for pay by link orders via the merchant dashboard.",
            "type": "boolean"
          },
          "visibleForCustomer": {
            "description": "If true, field will be included in order related views and communications sent to customers.",
            "type": "boolean"
          }
        }
      },
      "OrderCustomerConfig": {
        "title": "OrderCustomerConfig",
        "type": "object",
        "required": [
          "merchantPublicKey",
          "hidePayLaterOption"
        ],
        "properties": {
          "merchantPublicKey": {
            "type": "string"
          },
          "customToken": {
            "type": "string"
          },
          "hidePayLaterOption": {
            "type": "boolean"
          },
          "billingPaymentSourceId": {
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          }
        }
      },
      "OrderNotificationSettings": {
        "title": "OrderNotificationSettings",
        "type": "object",
        "required": [
          "orderPaidNotificationsEnabled"
        ],
        "properties": {
          "orderPaidNotificationsEnabled": {
            "type": "boolean"
          },
          "orderPaidNotificationEmails": {
            "type": "array",
            "items": {
              "examples": [
                "lucy.diamond@star.com"
              ],
              "type": "string"
            }
          }
        }
      },
      "OrderResponse": {
        "title": "OrderResponse",
        "type": "object",
        "required": [
          "orderId",
          "merchantId",
          "referenceOrderId",
          "amount",
          "orderType",
          "orderTypeDetails",
          "status",
          "settlementConfiguration",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "orderId": {
            "description": "System unique identifier for the order.",
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "System unique identifier for the merchant the order was created for.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "referenceOrderId": {
            "description": "A reference provided by the merchant to identify this order, such as an order number.",
            "examples": [
              "ORD-12411"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The un-surcharged order amount that goes on the invoice."
          },
          "surcharge": {
            "$ref": "#/components/schemas/Surcharge"
          },
          "customerEmailAddress": {
            "description": "Optional email address of the customer.",
            "type": "string"
          },
          "customerPhoneNumber": {
            "description": "Optional phone number of the customer.",
            "type": "string"
          },
          "customerName": {
            "description": "Optional name of the customer.",
            "type": "string"
          },
          "orderType": {
            "$ref": "#/components/schemas/OrderType"
          },
          "orderTypeDetails": {
            "$ref": "#/components/schemas/OrderTypeDetails"
          },
          "description": {
            "description": "A free text description of the order.",
            "type": "string"
          },
          "items": {
            "description": "A list of line items included in the order.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Item"
            }
          },
          "discountAmount": {
            "description": "Discount applied to order **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "shipping": {
            "$ref": "#/components/schemas/Shipping",
            "description": "Shipping address for the order."
          },
          "billing": {
            "$ref": "#/components/schemas/Billing"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Merchant specific additional data associated with this order."
          },
          "status": {
            "$ref": "#/components/schemas/OrderStatus"
          },
          "settlementConfiguration": {
            "$ref": "#/components/schemas/SettlementConfiguration"
          },
          "createdAt": {
            "description": "When the order was created.",
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "description": "When the order was last updated.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "OrderStatus": {
        "title": "OrderStatus",
        "type": "string",
        "enum": [
          "created",
          "accepted",
          "paid",
          "cancelled",
          "fulfilled",
          "returned"
        ]
      },
      "OrderType": {
        "title": "OrderType",
        "type": "string",
        "enum": [
          "online",
          "paybylink",
          "invoice"
        ]
      },
      "OrderType1": {
        "title": "OrderType",
        "type": "string",
        "enum": [
          "online",
          "manual",
          "invoice"
        ]
      },
      "OrderTypeDetails": {
        "title": "OrderTypeDetails",
        "oneOf": [
          {
            "$ref": "#/components/schemas/InvoiceOrderTypeDetails"
          },
          {
            "$ref": "#/components/schemas/OnlineOrderTypeDetails"
          },
          {
            "$ref": "#/components/schemas/PayByLinkOrderTypeDetails"
          }
        ]
      },
      "OrganisationCustomer": {
        "title": "OrganisationCustomer",
        "type": "object",
        "required": [
          "OrganisationCustomer"
        ],
        "properties": {
          "OrganisationCustomer": {
            "$ref": "#/components/schemas/OrganisationCustomer1"
          }
        }
      },
      "OrganisationCustomer1": {
        "title": "OrganisationCustomer",
        "type": "object",
        "required": [
          "customerId",
          "merchantId",
          "isVerified",
          "referenceCustomerId",
          "organisationName",
          "taxId",
          "organisationKyced",
          "organisationCreditChecked",
          "businessProfile",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for a merchant customer.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "System unique identifier for a merchant.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "description": "System unique identifier for a marketplace.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "emailAddress": {
            "description": "Email address of the organisation.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "isVerified": {
            "description": "Has the phone number and email address for this customer been verified to be correct.",
            "type": "boolean"
          },
          "phoneNumber": {
            "description": "Phone number of the organisation.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. Must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "organisationName": {
            "type": "string"
          },
          "taxId": {
            "description": "The tax id (e.g. ABN or NZBN) for the organisation.",
            "type": "string"
          },
          "organisationKyced": {
            "description": "Has the organisation undergone Know Your Customer (KYC) verification.",
            "type": "boolean"
          },
          "organisationCreditChecked": {
            "description": "Has the organisation successfully completed a credit check.",
            "type": "boolean"
          },
          "businessProfile": {
            "$ref": "#/components/schemas/CustBusinessProfile"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Merchant specific additional data associated with this customer."
          },
          "createdAt": {
            "description": "When the customer was first added to the system.",
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "description": "When the customer was last updated in the system.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "OrganisationDelegateKycResult": {
        "title": "OrganisationDelegateKycResult",
        "type": "object",
        "required": [
          "OrganisationDelegateKycResult"
        ],
        "properties": {
          "OrganisationDelegateKycResult": {
            "$ref": "#/components/schemas/OrganisationDelegateKycResult1"
          }
        }
      },
      "OrganisationDelegateKycResult1": {
        "title": "OrganisationDelegateKycResult",
        "type": "object",
        "required": [
          "payTypeEligibility"
        ],
        "properties": {
          "payTypeEligibility": {
            "$ref": "#/components/schemas/KycPayTypeEligibility",
            "description": "Provides the KYC status information for the delegate."
          },
          "uboDetails": {
            "$ref": "#/components/schemas/PersonalDetails"
          }
        }
      },
      "OrganisationMarketplaceCustomer": {
        "title": "OrganisationMarketplaceCustomer",
        "type": "object",
        "required": [
          "OrganisationMarketplaceCustomer"
        ],
        "properties": {
          "OrganisationMarketplaceCustomer": {
            "$ref": "#/components/schemas/OrganisationMarketplaceCustomer1"
          }
        }
      },
      "OrganisationMarketplaceCustomer1": {
        "title": "OrganisationMarketplaceCustomer",
        "type": "object",
        "required": [
          "marketplaceCustomerId",
          "marketplaceId",
          "createdAt",
          "updatedAt",
          "referenceCustomerId",
          "organisationName",
          "organisationKyced",
          "organisationCreditChecked"
        ],
        "properties": {
          "marketplaceCustomerId": {
            "examples": [
              "mktpcust_-fUW30ALFe23XYoW"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "emailAddress": {
            "description": "**Restricted field** - only included if caller has access.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "extensionData": {
            "$ref": "#/components/schemas/ExtensionData"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "referenceCustomerId": {
            "type": "string"
          },
          "organisationName": {
            "type": "string"
          },
          "taxId": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "string"
          },
          "organisationKyced": {
            "type": "boolean"
          },
          "organisationCreditChecked": {
            "type": "boolean"
          }
        }
      },
      "Other": {
        "title": "Other",
        "type": "object"
      },
      "Other1": {
        "title": "Other",
        "type": "object",
        "required": [
          "Other"
        ],
        "properties": {
          "Other": {
            "$ref": "#/components/schemas/Other2"
          }
        }
      },
      "Other2": {
        "title": "Other",
        "type": "object",
        "required": [
          "dbi",
          "name",
          "originatorInfo"
        ],
        "properties": {
          "dbi": {
            "$ref": "#/components/schemas/DescriptiveBillingInformation"
          },
          "name": {
            "description": "Name between 1 and 45 alphanumeric characters long.",
            "type": "string"
          },
          "originatorInfo": {
            "description": "Restaurant info between 1 and 25 alphanumeric characters long.",
            "type": "string"
          }
        }
      },
      "Other3": {
        "title": "Other",
        "type": "object"
      },
      "Outcome3ds": {
        "title": "Outcome3ds",
        "oneOf": [
          {
            "$ref": "#/components/schemas/AuthenticationUnavailable"
          },
          {
            "$ref": "#/components/schemas/FailedChallenge"
          },
          {
            "$ref": "#/components/schemas/FailedFrictionless"
          },
          {
            "$ref": "#/components/schemas/FailedTokenized"
          },
          {
            "$ref": "#/components/schemas/FlowNotAttempted"
          },
          {
            "$ref": "#/components/schemas/IncompleteChallenge"
          },
          {
            "$ref": "#/components/schemas/LogicError"
          },
          {
            "$ref": "#/components/schemas/NotSupported"
          },
          {
            "$ref": "#/components/schemas/PassedChallenge"
          },
          {
            "$ref": "#/components/schemas/PassedFrictionless"
          },
          {
            "$ref": "#/components/schemas/PassedTokenized"
          },
          {
            "$ref": "#/components/schemas/ResultNotAvailableError"
          }
        ]
      },
      "ParentAcquiringTransactionId": {
        "title": "ParentAcquiringTransactionId",
        "type": "object",
        "required": [
          "transactionId"
        ],
        "properties": {
          "transactionId": {
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          }
        }
      },
      "ParentIssuingTransactionId": {
        "title": "ParentIssuingTransactionId",
        "type": "object",
        "required": [
          "issuerTransactionId"
        ],
        "properties": {
          "issuerTransactionId": {
            "examples": [
              "itxn_pfWW83vesouNmmHB"
            ],
            "type": "string"
          }
        }
      },
      "ParentTransactionId": {
        "title": "ParentTransactionId",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ParentAcquiringTransactionId"
          },
          {
            "$ref": "#/components/schemas/ParentIssuingTransactionId"
          }
        ]
      },
      "PassedChallenge": {
        "title": "PassedChallenge",
        "type": "object",
        "properties": {
          "directoryServerTransactionId": {
            "type": "string"
          },
          "threeDSServerTransID": {
            "type": "string"
          },
          "acsTransID": {
            "type": "string"
          },
          "authenticationValue": {
            "type": "string"
          },
          "xid": {
            "type": "string"
          },
          "eci": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "info": {
            "type": "string"
          },
          "liabilityShifted": {
            "type": "boolean"
          }
        }
      },
      "PassedFrictionless": {
        "title": "PassedFrictionless",
        "type": "object",
        "properties": {
          "directoryServerTransactionId": {
            "type": "string"
          },
          "threeDSServerTransID": {
            "type": "string"
          },
          "acsTransID": {
            "type": "string"
          },
          "authenticationValue": {
            "type": "string"
          },
          "xid": {
            "type": "string"
          },
          "eci": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "info": {
            "type": "string"
          },
          "liabilityShifted": {
            "type": "boolean"
          }
        }
      },
      "PassedTokenized": {
        "title": "PassedTokenized",
        "type": "object",
        "properties": {
          "eci": {
            "type": "string"
          },
          "liabilityShifted": {
            "type": "boolean"
          },
          "transStatus": {
            "type": "string"
          }
        }
      },
      "Passport": {
        "title": "Passport",
        "type": "object",
        "required": [
          "country",
          "passportNumber",
          "expiryDate"
        ],
        "properties": {
          "country": {
            "$ref": "#/components/schemas/Country"
          },
          "passportNumber": {
            "type": "string"
          },
          "expiryDate": {
            "type": "string",
            "format": "date"
          }
        }
      },
      "Path": {
        "title": "Path",
        "type": "object",
        "required": [
          "path"
        ],
        "properties": {
          "path": {
            "type": "string"
          },
          "steps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "PayByBankTransfer": {
        "title": "PayByBankTransfer",
        "type": "object",
        "required": [
          "PayByBankTransfer"
        ],
        "properties": {
          "PayByBankTransfer": {
            "$ref": "#/components/schemas/PayByBankTransfer1"
          }
        }
      },
      "PayByBankTransfer1": {
        "title": "PayByBankTransfer",
        "description": "Pay for an order where the payment source is a bank transfer. This variation can currently only be used for pay plan payments and only if pre-arranged with the payment platform.",
        "type": "object",
        "required": [
          "paymentTokenId"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the bank transfer payment used to pay for this order.",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          }
        }
      },
      "PayByCard": {
        "title": "PayByCard",
        "type": "object",
        "required": [
          "PayByCard"
        ],
        "properties": {
          "PayByCard": {
            "$ref": "#/components/schemas/PayByCard1"
          }
        }
      },
      "PayByCard1": {
        "title": "PayByCard",
        "description": "Pay for an order where the payment source is a card. This variation can be used for both pay in full and pay plan payments.",
        "type": "object",
        "required": [
          "paymentTokenId"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the card payment used to pay for this order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "request3DS": {
            "description": "Request that a 3D secure challenge is attempted when payment is made. Defaults to `false`",
            "type": "boolean"
          },
          "returnURL": {
            "description": "If `request3DS` is specified, a URL to return to must also be given when the 3DS challenge is completed. Defaults to https://checkout.limepay.com.au/payment-action-return.html",
            "type": "string"
          },
          "authoriseOnly": {
            "description": "Authorise payment only. This means funds on the payment method are not captured and are only held for a maximum of 7 days. See [Capture action](/openapi/april-public/transactions/updatetransaction) on how to capture funds. Defaults to `false`.",
            "type": "boolean"
          },
          "offSession": {
            "description": "Indicate that the card-owner is present or absent (off-session). For example, set this to `true` if you're charging a customers saved payment method and they are not present. Defaults to `false`.",
            "type": "boolean"
          },
          "cardStatement": {
            "$ref": "#/components/schemas/PaymentDescription",
            "description": "If set, these details will be used for payments to set the descriptor on the issuer's financial statement. Defaults to the merchant's business details obtained at onboarding."
          }
        }
      },
      "PayByDirectDebit": {
        "title": "PayByDirectDebit",
        "type": "object",
        "required": [
          "PayByDirectDebit"
        ],
        "properties": {
          "PayByDirectDebit": {
            "$ref": "#/components/schemas/PayByDirectDebit1"
          }
        }
      },
      "PayByDirectDebit1": {
        "title": "PayByDirectDebit",
        "description": "Pay for an order where the payment source is a bank account. This variation can currently only be used for pay in full payments and only if pre-arranged with the payment platform.",
        "type": "object",
        "required": [
          "paymentTokenId"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the bank account payment used to pay for this order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "bankStatement": {
            "$ref": "#/components/schemas/PaymentDescription",
            "description": "If set, these details will be used for direct debit payments to set the descriptor shown on the bank account statement. Defaults to the merchant's business details obtained at onboarding."
          }
        }
      },
      "PayByLinkOrder": {
        "title": "PayByLinkOrder",
        "type": "object",
        "required": [
          "PayByLinkOrder"
        ],
        "properties": {
          "PayByLinkOrder": {
            "$ref": "#/components/schemas/PayByLinkOrder1"
          }
        }
      },
      "PayByLinkOrder1": {
        "title": "PayByLinkOrder",
        "type": "object",
        "required": [
          "order"
        ],
        "properties": {
          "order": {
            "$ref": "#/components/schemas/OrderResponse",
            "description": "Details of the generated order"
          },
          "token": {
            "description": "The token is valid for 24 hours",
            "type": "string"
          },
          "magicLink": {
            "description": "URL to send to the customer for auto-access to the payment checkout",
            "type": "string"
          }
        }
      },
      "PayByLinkOrderTypeDetails": {
        "title": "PayByLinkOrderTypeDetails",
        "type": "object",
        "required": [
          "PayByLinkOrderTypeDetails"
        ],
        "properties": {
          "PayByLinkOrderTypeDetails": {
            "$ref": "#/components/schemas/PayByLinkOrderTypeDetails1"
          }
        }
      },
      "PayByLinkOrderTypeDetails1": {
        "title": "PayByLinkOrderTypeDetails",
        "type": "object",
        "properties": {
          "customerConfig": {
            "$ref": "#/components/schemas/OrderCustomerConfig"
          }
        }
      },
      "PayByNetworkToken": {
        "title": "PayByNetworkToken",
        "type": "object",
        "required": [
          "PayByNetworkToken"
        ],
        "properties": {
          "PayByNetworkToken": {
            "$ref": "#/components/schemas/PayByNetworkToken1"
          }
        }
      },
      "PayByNetworkToken1": {
        "title": "PayByNetworkToken",
        "description": "Pay for an order where the payment token represents a payment using a wallet such as an Apple Pay or Google Pay card.",
        "type": "object",
        "required": [
          "paymentTokenId"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the payment used to pay for this order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "authoriseOnly": {
            "description": "Authorise payment only. This means funds on the payment method are not captured and are only held for a maximum of 7 days. See [Capture action](/openapi/april-public/transactions/updatetransaction) on how to capture funds. Defaults to `false`.",
            "type": "boolean"
          },
          "cardStatement": {
            "$ref": "#/components/schemas/PaymentDescription",
            "description": "If set, these details will be used for card payments to set the descriptor shown on the cardholders statement. Defaults to the merchant's business details obtained at onboarding."
          }
        }
      },
      "PayByPayTo": {
        "title": "PayByPayTo",
        "type": "object",
        "required": [
          "PayByPayTo"
        ],
        "properties": {
          "PayByPayTo": {
            "$ref": "#/components/schemas/PayByPayTo1"
          }
        }
      },
      "PayByPayTo1": {
        "title": "PayByPayTo",
        "description": "Pay for an order where the payment source is a bank account with PayTo support. This variation can currently only be used for pay in full payments and only if pre-arranged with the payment platform.",
        "type": "object",
        "required": [
          "paymentTokenId"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the bank account with a previously accepted PayTo agreement used to pay for this order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "bankStatement": {
            "$ref": "#/components/schemas/PaymentDescription",
            "description": "If set, these details will be used for PayTo payments to set the descriptor shown on the bank account statement. Defaults to the merchant's business details obtained at onboarding."
          }
        }
      },
      "PayByPaymentToken": {
        "title": "PayByPaymentToken",
        "type": "object",
        "required": [
          "PayByPaymentToken"
        ],
        "properties": {
          "PayByPaymentToken": {
            "$ref": "#/components/schemas/PayByPaymentToken1"
          }
        }
      },
      "PayByPaymentToken1": {
        "title": "PayByPaymentToken",
        "description": "\nPay for an order given any valid payment token. This variation can be used for both pay in full and pay plans.\nUseful when you want one method regardless of the payment source and don't need to use any of the payment source\nspecific options such as `authoriseOnly`.\n",
        "type": "object",
        "required": [
          "paymentTokenId"
        ],
        "properties": {
          "referenceTransactionId": {
            "description": "Optional reference that can be passed in when Creating a transaction.",
            "type": "string"
          },
          "paymentTokenId": {
            "description": "Payment token representing the payment source used to pay for this order",
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "paymentDescription": {
            "$ref": "#/components/schemas/PaymentDescription",
            "description": "If set, these details will be used for payments to set the descriptor on the issuer's financial statement. Defaults to the merchant's business details obtained at onboarding."
          }
        }
      },
      "PayInFull": {
        "title": "PayInFull",
        "type": "object",
        "required": [
          "PayInFull"
        ],
        "properties": {
          "PayInFull": {
            "$ref": "#/components/schemas/PayInFull1"
          }
        }
      },
      "PayInFull1": {
        "title": "PayInFull",
        "description": "Indicates a payment that is paid off in full at the time of the order.",
        "type": "object"
      },
      "PayInFullBankTransfer": {
        "title": "PayInFullBankTransfer",
        "type": "object",
        "required": [
          "PayInFullBankTransfer"
        ],
        "properties": {
          "PayInFullBankTransfer": {
            "$ref": "#/components/schemas/PayInFullBankTransfer1"
          }
        }
      },
      "PayInFullBankTransfer1": {
        "title": "PayInFullBankTransfer",
        "type": "object"
      },
      "PayInFullCardPayment": {
        "title": "PayInFullCardPayment",
        "type": "object",
        "required": [
          "PayInFullCardPayment"
        ],
        "properties": {
          "PayInFullCardPayment": {
            "$ref": "#/components/schemas/PayInFullCardPayment1"
          }
        }
      },
      "PayInFullCardPayment1": {
        "title": "PayInFullCardPayment",
        "type": "object",
        "required": [
          "funding",
          "brand",
          "domestic"
        ],
        "properties": {
          "funding": {
            "$ref": "#/components/schemas/CardFunding"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBrand"
          },
          "domestic": {
            "type": "boolean"
          }
        }
      },
      "PayInFullDirectDebit": {
        "title": "PayInFullDirectDebit",
        "type": "object",
        "required": [
          "PayInFullDirectDebit"
        ],
        "properties": {
          "PayInFullDirectDebit": {
            "$ref": "#/components/schemas/PayInFullDirectDebit1"
          }
        }
      },
      "PayInFullDirectDebit1": {
        "title": "PayInFullDirectDebit",
        "type": "object"
      },
      "PayInFullPayTo": {
        "title": "PayInFullPayTo",
        "type": "object",
        "required": [
          "PayInFullPayTo"
        ],
        "properties": {
          "PayInFullPayTo": {
            "$ref": "#/components/schemas/PayInFullPayTo1"
          }
        }
      },
      "PayInFullPayTo1": {
        "title": "PayInFullPayTo",
        "type": "object"
      },
      "PayOrderComplete": {
        "title": "PayOrderComplete",
        "type": "object",
        "required": [
          "PayOrderComplete"
        ],
        "properties": {
          "PayOrderComplete": {
            "$ref": "#/components/schemas/PayOrderComplete1"
          }
        }
      },
      "PayOrderComplete1": {
        "title": "PayOrderComplete",
        "type": "object",
        "required": [
          "transactionId",
          "transactionStatus",
          "transactionDetails",
          "amount",
          "currency",
          "surchargeAmount",
          "payType"
        ],
        "properties": {
          "transactionId": {
            "description": "System unique identifier for the transaction.",
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          },
          "transactionStatus": {
            "$ref": "#/components/schemas/TransactionStatus",
            "description": "\nThese are the statuses returned by the order payment API and the values displayed when merchant integrators retrieve (GET) a transaction via the API.\n\nNote: our dashboards in most cases map these statuses to different values, but only for display purposes.\n\n* **accepted**           - This payment was accepted by the customer but the payment method is asynchronous (e.g.: Direct Debit, Bank Transfer),\n                           so we have to wait for the final result before we move it to either **paid** or **failed**.\n* **paid**               - This payment is successful and funds have been collected.\n* **pending**            - This payment is successful, funds have been collected from the customer, but they are pending being transferred to the merchants balance.\n                           This status is currently only used by PayPlan's since we delay the transfer of funds into a merchants balance.\n* **refunded**           - A full refund has been initiated on this payment.\n* **partially_refunded** -\tA partial refund of the original payment amount has been initiated on this payment.\n* **failed**             -\tThe attempt to collect funds from the payment method was not successful.\n* **cancelled**          - This payment has been cancelled.\n* **disputed**           - At least one charge on the payment method has been disputed.\n* **not_captured**       - The payment method has been authorised but funds are not yet captured.\n* **incomplete**         -\tThis payment has not been completed by the customer. Currently, a transaction is only incomplete if 3DS authentication has not yet been completed.\n                           If the customer does not complete the authentication, the transaction will stay in this state.\n"
          },
          "transactionDetails": {
            "$ref": "#/components/schemas/TransactionResponse"
          },
          "amount": {
            "description": "The order amount **in minor currency units** - note this includes any surcharging amount applied to the transaction",
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "description": "The currency of the given amount as a 3 letter ISO code.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "surchargeAmount": {
            "description": "The order amount surcharge component **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "payType": {
            "$ref": "#/components/schemas/PayTypeDto",
            "description": "The payment type used to pay for this order."
          }
        }
      },
      "PayOrderRequest": {
        "title": "PayOrderRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Confirm3DSComplete"
          },
          {
            "$ref": "#/components/schemas/PayByBankTransfer"
          },
          {
            "$ref": "#/components/schemas/PayByCard"
          },
          {
            "$ref": "#/components/schemas/PayByDirectDebit"
          },
          {
            "$ref": "#/components/schemas/PayByNetworkToken"
          },
          {
            "$ref": "#/components/schemas/PayByPayTo"
          },
          {
            "$ref": "#/components/schemas/PayByPaymentToken"
          }
        ]
      },
      "PayOrderResponse": {
        "title": "PayOrderResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayOrderComplete"
          },
          {
            "$ref": "#/components/schemas/ThreeDSAuthorisationRequired"
          }
        ]
      },
      "PayPlan": {
        "title": "PayPlan",
        "type": "object",
        "required": [
          "PayPlan"
        ],
        "properties": {
          "PayPlan": {
            "$ref": "#/components/schemas/PayPlan1"
          }
        }
      },
      "PayPlan1": {
        "title": "PayPlan",
        "description": "Indicates a payment that is paid off in instalments over a schedule.",
        "type": "object",
        "required": [
          "variant"
        ],
        "properties": {
          "variant": {
            "$ref": "#/components/schemas/PayPlanVariant",
            "description": "The variant of the pay plan, specifying number and frequency of instalments."
          }
        }
      },
      "PayPlanParameters": {
        "title": "PayPlanParameters",
        "type": "object",
        "required": [
          "amount",
          "initialPayment",
          "instalmentLength",
          "instalmentFrequency",
          "payPlanVariant"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The full plan amount"
          },
          "initialPayment": {
            "description": "The amount that the customer will pay up front **in minor currency units** (eg cents for AUD). May be `0` if no upfront payment is required.",
            "type": "integer",
            "format": "int64"
          },
          "instalmentLength": {
            "description": "The number of instalment payments expected for this pay plan (min 2, max 52).",
            "type": "integer",
            "format": "int32"
          },
          "instalmentFrequency": {
            "$ref": "#/components/schemas/InstalmentFrequency"
          },
          "proposedSchedule": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ScheduleEntry"
            }
          },
          "payPlanVariant": {
            "$ref": "#/components/schemas/PayPlanVariant",
            "description": "The variant of the plan to construct. This implies the number of instalments; the minimum initialPayment expected; and the frequency of payments (e.g. fortnightly, weekly, etc.)"
          }
        }
      },
      "PayPlanParametersRequest": {
        "title": "PayPlanParametersRequest",
        "type": "object",
        "required": [
          "amount"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The full order amount"
          },
          "payPlanVariants": {
            "description": "The variants of the plan to calculate parameters for.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayPlanVariant"
            }
          },
          "payInFullAmount": {
            "description": "The portion of the order amount that is for pay in full items **in minor currency units**. Only relevant for merchants who have a pre-arranged agreement with April to support orders including some pay in full items.",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "PayPlanParametersResponse": {
        "title": "PayPlanParametersResponse",
        "type": "object",
        "properties": {
          "parameters": {
            "description": "Pay plan parameters for each of the requested variants.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayPlanParameters"
            }
          }
        }
      },
      "PayPlanResponse": {
        "title": "PayPlanResponse",
        "type": "object",
        "required": [
          "payPlanId",
          "merchantId",
          "customerId",
          "state",
          "amount",
          "surchargeAmount",
          "platformFee",
          "taxAmount",
          "payPlanVariant",
          "planAmountOutstanding",
          "isRefunded",
          "isOverdue",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "payPlanId": {
            "description": "System unique identifier for the pay plan",
            "examples": [
              "plan_ZIeffWuWCgGQl2LZ"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "System unique identifier for the merchant the pay plan was created for",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "customerId": {
            "description": "System unique identifier for the merchant customer who owns the pay plan.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "state": {
            "$ref": "#/components/schemas/PayPlanState",
            "description": "\nThese are all the statuses a pay plan can be in.\n\n* **Created** - The pay plan object has been created, but has not been successfully associated with an order yet. No payment or money transfers will occur when the pay plan is in this state.\n* **Active** - The pay plan has successfully been established, the initial payment, if any, has been received and one or more instalments are yet to be paid.\n* **Completed** - The payment plan has been completely paid, including any fees/penalties.\n* **InDefault** - The plan is overdue and has not been paid after several soft collection attempts.\n"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The full plan amount"
          },
          "surchargeAmount": {
            "description": "The surcharge passed to the customer for creating this pay plan **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "platformFee": {
            "description": "The fee charged for creating this pay plan **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "taxAmount": {
            "description": "Tax owed by the merchant on the fees **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "payPlanVariant": {
            "$ref": "#/components/schemas/PayPlanVariant",
            "description": "The variant of the plan to construct. This implies the number of instalments; the minimum initialPayment expected; and the frequency of payments (e.g. fortnightly, weekly, etc.)"
          },
          "nextInstalmentDate": {
            "description": "The next computed date in which an instalment should be charged.",
            "type": "string",
            "format": "date-time"
          },
          "nextInstalment": {
            "description": "The instalment number of the next instalment.",
            "examples": [
              3
            ],
            "type": "integer",
            "format": "int32"
          },
          "planAmountOutstanding": {
            "description": "The outstanding amount still to be paid on the plan **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "paymentSourceType": {
            "$ref": "#/components/schemas/PaymentSourceType"
          },
          "merchantOrderId": {
            "description": "System unique identifier for the order corresponding to this plan.",
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          },
          "transactionId": {
            "description": "System unique identifier for the transaction corresponding to this plan.",
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          },
          "charges": {
            "description": "All charges including failed attempts made on the pay plan.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Charge"
            }
          },
          "refunds": {
            "description": "All refunds applied to the pay plan.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Refund"
            }
          },
          "isRefunded": {
            "description": "Has the pay plan been fully refunded.",
            "type": "boolean"
          },
          "isOverdue": {
            "description": "Is the pay plan overdue.",
            "type": "boolean"
          },
          "overdueAmount": {
            "description": "If set, this is the amount that was expected to be paid on the last scheduled instalment but was not **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "overdueAt": {
            "description": "If set, when the pay plan became overdue.",
            "type": "string",
            "format": "date-time"
          },
          "bankTransferDetails": {
            "$ref": "#/components/schemas/BankTransferDetails"
          },
          "createdAt": {
            "description": "When the pay plan was created.",
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "description": "When the pay plan was last updated.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "PayPlanSettings": {
        "title": "PayPlanSettings",
        "type": "object",
        "properties": {
          "maxPayPlanAmount": {
            "type": "integer",
            "format": "int64"
          },
          "minPayPlanAmount": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "PayPlanState": {
        "title": "PayPlanState",
        "type": "string",
        "enum": [
          "Created",
          "Active",
          "Completed",
          "InDefault"
        ]
      },
      "PayPlanVariant": {
        "title": "PayPlanVariant",
        "type": "string",
        "enum": [
          "payplan_fortnight_25_25_25_25",
          "payplan_4_weekly_payments",
          "payplan_8_weekly_payments",
          "payplan_26_fortnightly_payments",
          "payplan_52_weekly_payments",
          "payplan_2_monthly_payments",
          "payplan_3_monthly_payments",
          "payplan_4_monthly_payments",
          "payplan_5_monthly_payments",
          "payplan_6_monthly_payments",
          "payplan_7_monthly_payments",
          "payplan_8_monthly_payments",
          "payplan_9_monthly_payments",
          "payplan_10_monthly_payments",
          "payplan_11_monthly_payments",
          "payplan_12_monthly_payments",
          "payplan_fortnight_0_100",
          "payplan_4_week_0_100",
          "payplan_7_week_0_100",
          "payplan_30_days_0_100"
        ]
      },
      "PayTo": {
        "title": "PayTo",
        "description": "Payment method is via PayTo.",
        "type": "object"
      },
      "PayToFailure": {
        "title": "PayToFailure",
        "type": "object",
        "required": [
          "code",
          "message",
          "detail"
        ],
        "properties": {
          "code": {
            "$ref": "#/components/schemas/PayToFailureCode"
          },
          "message": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          }
        }
      },
      "PayToFailureCode": {
        "title": "PayToFailureCode",
        "type": "string",
        "enum": [
          "other"
        ]
      },
      "PayToMethod": {
        "title": "PayToMethod",
        "type": "object",
        "required": [
          "PayToMethod"
        ],
        "properties": {
          "PayToMethod": {
            "$ref": "#/components/schemas/PayToMethod1"
          }
        }
      },
      "PayToMethod1": {
        "title": "PayToMethod",
        "type": "object",
        "required": [
          "agreementToken"
        ],
        "properties": {
          "agreementToken": {
            "description": "Token representing an active PayTo open agreement",
            "type": "string"
          }
        }
      },
      "PayToMethodResp": {
        "title": "PayToMethodResp",
        "type": "object",
        "required": [
          "PayToMethodResp"
        ],
        "properties": {
          "PayToMethodResp": {
            "$ref": "#/components/schemas/PayToMethodResp1"
          }
        }
      },
      "PayToMethodResp1": {
        "title": "PayToMethodResp",
        "type": "object",
        "required": [
          "agreementUid",
          "accountIdentifierHint"
        ],
        "properties": {
          "agreementUid": {
            "type": "string"
          },
          "accountIdentifierHint": {
            "type": "string"
          }
        }
      },
      "PayToPaymentMethod": {
        "title": "PayToPaymentMethod",
        "type": "object",
        "required": [
          "paymentMethodType",
          "accountHint",
          "paymentStatus"
        ],
        "properties": {
          "paymentMethodType": {
            "$ref": "#/components/schemas/PaymentMethodType1"
          },
          "accountHint": {
            "type": "string"
          },
          "paymentStatus": {
            "$ref": "#/components/schemas/PaymentStatus"
          },
          "paymentFailure": {
            "$ref": "#/components/schemas/PayToFailure"
          }
        }
      },
      "PayToToken": {
        "title": "PayToToken",
        "type": "object",
        "required": [
          "PayToToken"
        ],
        "properties": {
          "PayToToken": {
            "$ref": "#/components/schemas/PayToToken1"
          }
        }
      },
      "PayToToken1": {
        "title": "PayToToken",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "agreementUid",
          "accountIdentifierHint"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "agreementUid": {
            "type": "string"
          },
          "accountIdentifierHint": {
            "type": "string"
          }
        }
      },
      "PayToTokenDetails": {
        "title": "PayToTokenDetails",
        "type": "object",
        "required": [
          "PayToTokenDetails"
        ],
        "properties": {
          "PayToTokenDetails": {
            "$ref": "#/components/schemas/PayToTokenDetails1"
          }
        }
      },
      "PayToTokenDetails1": {
        "title": "PayToTokenDetails",
        "type": "object",
        "required": [
          "accountIdentifierHint",
          "agreementUid"
        ],
        "properties": {
          "accountIdentifierHint": {
            "type": "string"
          },
          "agreementUid": {
            "type": "string"
          }
        }
      },
      "PayType": {
        "title": "PayType",
        "type": "string",
        "enum": [
          "payplan",
          "paycard"
        ]
      },
      "PayType1": {
        "title": "PayType",
        "type": "string",
        "enum": [
          "PayPlan",
          "PayInFull"
        ]
      },
      "PayTypeDto": {
        "title": "PayTypeDto",
        "type": "string",
        "enum": [
          "payplan",
          "payinfull"
        ]
      },
      "PaymentAmount": {
        "title": "PaymentAmount",
        "type": "object",
        "required": [
          "amount",
          "currency"
        ],
        "properties": {
          "amount": {
            "description": "The amount of the payment in minor currency units (eg cents for AUD)",
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "description": "The currency of the payment",
            "examples": [
              "AUD"
            ],
            "type": "string"
          }
        }
      },
      "PaymentChannel": {
        "title": "PaymentChannel",
        "type": "string",
        "enum": [
          "direct_entry",
          "npp"
        ]
      },
      "PaymentCustomerType": {
        "title": "PaymentCustomerType",
        "type": "string",
        "enum": [
          "Consumer",
          "Organisation"
        ]
      },
      "PaymentData": {
        "title": "PaymentData",
        "type": "object",
        "required": [
          "data",
          "header",
          "signature",
          "version"
        ],
        "properties": {
          "data": {
            "type": "string"
          },
          "header": {
            "$ref": "#/components/schemas/Header"
          },
          "signature": {
            "type": "string"
          },
          "version": {
            "$ref": "#/components/schemas/Version"
          }
        }
      },
      "PaymentDescription": {
        "title": "PaymentDescription",
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "description": "The primary descriptor shown on the payer's statement. This must be between 5 and 13 characters, consisting only of letters, spaces and numbers. It must contain at least one letter.",
            "type": "string"
          },
          "city": {
            "description": "A 'city' description for the merchant. This aids in further clarifying with the payer the origin of this payment. This must be between 1 and 13 characters, consisting of only letters, numbers, or a `-`.",
            "type": "string"
          }
        }
      },
      "PaymentDescriptor_Vault": {
        "title": "PaymentDescriptor_Vault",
        "description": "Details of the payment that will be surcharged.",
        "type": "object",
        "required": [
          "form",
          "customerType",
          "amount",
          "method"
        ],
        "properties": {
          "form": {
            "$ref": "#/components/schemas/PaymentForm_Vault"
          },
          "customerType": {
            "$ref": "#/components/schemas/PaymentCustomerType",
            "description": "The payment customer type (eg organisation)."
          },
          "amount": {
            "$ref": "#/components/schemas/PaymentAmount",
            "description": "The payment amount."
          },
          "method": {
            "$ref": "#/components/schemas/PaymentMethod_Vault"
          }
        }
      },
      "PaymentEvent": {
        "title": "PaymentEvent",
        "oneOf": [
          {
            "$ref": "#/components/schemas/AutoPaymentFromCreditBalance"
          },
          {
            "$ref": "#/components/schemas/CreditAppliedToNewStatement"
          },
          {
            "$ref": "#/components/schemas/ManualPaymentMarked"
          }
        ]
      },
      "PaymentForm_Vault": {
        "title": "PaymentForm_Vault",
        "description": "The payment form (eg pay in full).",
        "oneOf": [
          {
            "$ref": "#/components/schemas/PayInFull"
          },
          {
            "$ref": "#/components/schemas/PayPlan"
          }
        ]
      },
      "PaymentMethod": {
        "title": "PaymentMethod",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ApplePay"
          },
          {
            "$ref": "#/components/schemas/BankTransfer"
          },
          {
            "$ref": "#/components/schemas/Card"
          },
          {
            "$ref": "#/components/schemas/DirectDebit"
          },
          {
            "$ref": "#/components/schemas/GooglePay"
          },
          {
            "$ref": "#/components/schemas/PayTo"
          },
          {
            "$ref": "#/components/schemas/SavedPaymentSource"
          }
        ]
      },
      "PaymentMethod1": {
        "title": "PaymentMethod",
        "type": "string",
        "enum": [
          "CARD"
        ]
      },
      "PaymentMethodTokenizationData": {
        "title": "PaymentMethodTokenizationData",
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PaymentMethodTokenizationDataType"
          },
          "token": {
            "type": "string"
          }
        }
      },
      "PaymentMethodTokenizationDataType": {
        "title": "PaymentMethodTokenizationDataType",
        "type": "string",
        "enum": [
          "PAYMENT_GATEWAY",
          "DIRECT"
        ]
      },
      "PaymentMethodType": {
        "title": "PaymentMethodType",
        "type": "string",
        "enum": [
          "Card",
          "DirectDebit",
          "BankTransfer",
          "PayTo"
        ]
      },
      "PaymentMethodType1": {
        "title": "PaymentMethodType",
        "type": "string",
        "enum": [
          "Card",
          "DirectDebit",
          "PayTo"
        ]
      },
      "PaymentMethod_Vault": {
        "title": "PaymentMethod_Vault",
        "description": "The payment method (eg by card).",
        "oneOf": [
          {
            "$ref": "#/components/schemas/ApplePay1"
          },
          {
            "$ref": "#/components/schemas/BankTransfer1"
          },
          {
            "$ref": "#/components/schemas/Card2"
          },
          {
            "$ref": "#/components/schemas/DirectDebit1"
          },
          {
            "$ref": "#/components/schemas/GooglePay1"
          },
          {
            "$ref": "#/components/schemas/SavedPaymentSource1"
          }
        ]
      },
      "PaymentSource": {
        "title": "PaymentSource",
        "description": "Details of the initial payment method to be used for the pay plan.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/BankTransfer1"
          },
          {
            "$ref": "#/components/schemas/Card2"
          },
          {
            "$ref": "#/components/schemas/SavedPaymentSource1"
          }
        ]
      },
      "PaymentSourceMethod": {
        "title": "PaymentSourceMethod",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CardMethod"
          },
          {
            "$ref": "#/components/schemas/DirectDebitMethod"
          },
          {
            "$ref": "#/components/schemas/PayToMethod"
          }
        ]
      },
      "PaymentSourceResponse": {
        "title": "PaymentSourceResponse",
        "description": "A payment source saved for use in future payments.",
        "type": "object",
        "required": [
          "paymentSourceId",
          "sourceMethod",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "paymentSourceId": {
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "customerId": {
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "merchantId": {
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "customerDelegateId": {
            "examples": [
              "custd_fA10wWw5-8RVL2EC"
            ],
            "type": "string"
          },
          "sourceMethod": {
            "$ref": "#/components/schemas/SavedPaymentSourceMethodResp"
          },
          "usageScope": {
            "$ref": "#/components/schemas/PaymentSourceUsageScope",
            "description": "\nUsed to determine the context of a payment sources. Should be `null` for consumer customers.\n\n* **ScopeOrganisation**  - For B2B customers, a payment source saved with organisation scope is available to\n                           _all_ delegates of the organisation represented by the customer.\n* **ScopeDelegate**      - For B2B customers, a payment source saved with delegate scope is _only_ available to\n                           the delegate who added the payment source.\n* **ScopeBilling**       - Indicates a payment source that can be used to automatically pay fee invoices for\n                           merchants set up for gross settlement. Adding a new billing payment source will automatically\n                           configure that as the default payment source for fee invoices going forward.\n"
          },
          "createdAt": {
            "description": "When the payment source was created.",
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "description": "When the payment source was last updated.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "PaymentSourceType": {
        "title": "PaymentSourceType",
        "description": "The type of payment source used to pay off the plan. Not present for source-less methods, such as bank transfers.",
        "type": "string",
        "enum": [
          "Card",
          "DirectDebit",
          "PayTo"
        ]
      },
      "PaymentSourceUsageScope": {
        "title": "PaymentSourceUsageScope",
        "type": "string",
        "enum": [
          "ScopeOrganisation",
          "ScopeDelegate",
          "ScopeBilling"
        ]
      },
      "PaymentStatus": {
        "title": "PaymentStatus",
        "type": "string",
        "enum": [
          "Created",
          "Settled",
          "Failed"
        ]
      },
      "PaymentSurchargeRequest": {
        "title": "PaymentSurchargeRequest",
        "type": "object",
        "required": [
          "PaymentSurchargeRequest"
        ],
        "properties": {
          "PaymentSurchargeRequest": {
            "$ref": "#/components/schemas/PaymentSurchargeRequest1"
          }
        }
      },
      "PaymentSurchargeRequest1": {
        "title": "PaymentSurchargeRequest",
        "type": "object",
        "required": [
          "payment"
        ],
        "properties": {
          "payment": {
            "$ref": "#/components/schemas/PaymentDescriptor_Vault"
          }
        }
      },
      "PaymentSurchargeResponse": {
        "title": "PaymentSurchargeResponse",
        "type": "object",
        "required": [
          "PaymentSurchargeResponse"
        ],
        "properties": {
          "PaymentSurchargeResponse": {
            "$ref": "#/components/schemas/PaymentSurchargeResponse1"
          }
        }
      },
      "PaymentSurchargeResponse1": {
        "title": "PaymentSurchargeResponse",
        "type": "object",
        "required": [
          "surchargeQuote"
        ],
        "properties": {
          "surchargeQuote": {
            "$ref": "#/components/schemas/SurchargeQuote",
            "description": "A surcharge quote for the proposed payment in CalculateSurchargeRequest.PaymentSurchargeRequest"
          }
        }
      },
      "PaymentTokenData": {
        "title": "PaymentTokenData",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "payType",
          "method"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "paymentSourceId": {
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "payType": {
            "$ref": "#/components/schemas/PayTypeDto"
          },
          "method": {
            "$ref": "#/components/schemas/PaymentTokenMethod"
          },
          "payPlanVariant": {
            "$ref": "#/components/schemas/PayPlanVariant"
          }
        }
      },
      "PaymentTokenMethod": {
        "title": "PaymentTokenMethod",
        "oneOf": [
          {
            "$ref": "#/components/schemas/BankTransferTokenDetails"
          },
          {
            "$ref": "#/components/schemas/CardTokenDetails"
          },
          {
            "$ref": "#/components/schemas/DirectDebitTokenDetails"
          },
          {
            "$ref": "#/components/schemas/NetworkTokenDetails"
          },
          {
            "$ref": "#/components/schemas/PayToTokenDetails"
          }
        ]
      },
      "PaymentTokenResponse": {
        "title": "PaymentTokenResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/BankAccountToken"
          },
          {
            "$ref": "#/components/schemas/ManualCardToken"
          },
          {
            "$ref": "#/components/schemas/NetworkToken"
          },
          {
            "$ref": "#/components/schemas/PayToToken"
          },
          {
            "$ref": "#/components/schemas/SavedCardToken"
          },
          {
            "$ref": "#/components/schemas/SavedPaymentSourceToken"
          }
        ]
      },
      "PaymentTypeAmount": {
        "title": "PaymentTypeAmount",
        "type": "object",
        "required": [
          "checkoutPayType",
          "amount"
        ],
        "properties": {
          "checkoutPayType": {
            "$ref": "#/components/schemas/CheckoutPayType"
          },
          "amount": {
            "description": "The amount in minor currency units – eg cents – for this payment type in the checkout",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "PayoutAccountDetails": {
        "title": "PayoutAccountDetails",
        "description": "Bank account details for where the payout was sent.",
        "type": "object",
        "required": [
          "accountId",
          "accountName",
          "identifier",
          "currency",
          "country"
        ],
        "properties": {
          "accountId": {
            "description": "System unique identifier for a bank account",
            "examples": [
              "xacc_sWY5yPi9OQH31jMA"
            ],
            "type": "string"
          },
          "accountName": {
            "description": "Name of the person or business that holds the account",
            "type": "string"
          },
          "bankName": {
            "description": "Name of financial institution where the account is held.",
            "type": "string"
          },
          "identifier": {
            "$ref": "#/components/schemas/BankAccountIdentifier"
          },
          "currency": {
            "description": "3 letter ISO code indicating the currency of the bank account.",
            "examples": [
              "AUD"
            ],
            "type": "string"
          },
          "country": {
            "description": "2 letter ISO code indicating the country where the bank account is held.",
            "type": "string"
          }
        }
      },
      "PayoutDetailLineItem": {
        "title": "PayoutDetailLineItem",
        "type": "object",
        "required": [
          "entryType",
          "totalAmount"
        ],
        "properties": {
          "entryType": {
            "$ref": "#/components/schemas/EntryType"
          },
          "count": {
            "type": "integer",
            "format": "int64"
          },
          "totalAmount": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "PayoutDetails": {
        "title": "PayoutDetails",
        "type": "object",
        "required": [
          "summary"
        ],
        "properties": {
          "summary": {
            "$ref": "#/components/schemas/PayoutSummary",
            "description": "Basic summary of the payout, as you would get when querying payouts."
          },
          "summaryLineItems": {
            "description": "A summary of the contents of the payout, including the number of transactions, refunds, and other items that make up the total amount.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayoutDetailLineItem"
            }
          },
          "accountDetails": {
            "$ref": "#/components/schemas/PayoutAccountDetails"
          }
        }
      },
      "PayoutSchedule": {
        "title": "PayoutSchedule",
        "type": "string",
        "enum": [
          "daily",
          "weekly",
          "fortnightly",
          "monthly"
        ]
      },
      "PayoutSettings": {
        "title": "PayoutSettings",
        "type": "object",
        "required": [
          "notificationsEnabled"
        ],
        "properties": {
          "notificationEmails": {
            "description": "List of email addresses that will receive a payout report whenever a payout has been transferred to the merchant's primary bank account. ",
            "type": "array",
            "items": {
              "examples": [
                "lucy.diamond@star.com"
              ],
              "type": "string"
            }
          },
          "notificationsEnabled": {
            "description": "Toggle for whether to send payout report emails.",
            "type": "boolean"
          }
        }
      },
      "PayoutStatus": {
        "title": "PayoutStatus",
        "type": "string",
        "enum": [
          "created",
          "pending",
          "paid",
          "in_transit",
          "canceled",
          "failed",
          "reversed",
          "suspended"
        ]
      },
      "PayoutSummary": {
        "title": "PayoutSummary",
        "type": "object",
        "required": [
          "payoutId",
          "currency",
          "merchantId",
          "merchantBusinessName",
          "amount",
          "openingBalance",
          "closingBalance",
          "totalAmount",
          "status",
          "createdAt"
        ],
        "properties": {
          "payoutId": {
            "description": "System unique identifier for the payout.",
            "examples": [
              "payout_BNxPPbDh1c7XCUgt"
            ],
            "type": "string"
          },
          "referencePayoutId": {
            "description": "Identifier for payout that merchants can use.",
            "type": "string"
          },
          "currency": {
            "description": "The currency of the payout as a 3 letter ISO code.",
            "type": "string"
          },
          "settlementDate": {
            "description": "The date the payout was settlement with the merchant.",
            "type": "string",
            "format": "date"
          },
          "merchantId": {
            "description": "System unique identifier for the merchant issued the payout.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "merchantBusinessName": {
            "description": "Business name for the merchant issued the payout.",
            "type": "string"
          },
          "amount": {
            "description": "The amount credited towards the payout **in minor currency units**",
            "type": "integer",
            "format": "int64"
          },
          "openingBalance": {
            "description": "\nThe opening balance of the merchant account before the payout was settled **in minor currency units**.\nWill usually be `0` but will be negative if the merchant account has a negative balance from a previous payout.\n",
            "type": "integer",
            "format": "int64"
          },
          "closingBalance": {
            "description": "\nThe closing balance of the merchant account after payout has settled **in minor currency units**.\nWill usually be `0` but will be negative if the merchant account has a negative balance.\n",
            "type": "integer",
            "format": "int64"
          },
          "totalAmount": {
            "description": "The amount paid out or the closing balance if the merchant account has a negative balance **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "status": {
            "$ref": "#/components/schemas/PayoutStatus",
            "description": "Status of the invoice."
          },
          "bankAccountNumber": {
            "description": "The bank account number the payout was sent to.",
            "type": "string"
          },
          "paymentChannel": {
            "$ref": "#/components/schemas/PaymentChannel",
            "description": "The payment channel to use for the payout."
          },
          "statementDescriptor": {
            "description": "Information about the payout that will appear on the customer's bank statement.",
            "type": "string"
          },
          "createdAt": {
            "description": "When the payout was created.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "PayoutSummary1": {
        "title": "PayoutSummary",
        "type": "object",
        "required": [
          "payoutId",
          "currency",
          "status",
          "settlementType",
          "openingBalance",
          "closingBalance",
          "payoutAmount"
        ],
        "properties": {
          "payoutId": {
            "examples": [
              "payout_BNxPPbDh1c7XCUgt"
            ],
            "type": "string"
          },
          "referencePayoutId": {
            "type": "string"
          },
          "currency": {
            "description": "ISO 4217 3 Digits Currency code",
            "type": "string"
          },
          "activeFrom": {
            "type": "string",
            "format": "date-time"
          },
          "activeTo": {
            "type": "string",
            "format": "date-time"
          },
          "paidOn": {
            "type": "string",
            "format": "date"
          },
          "status": {
            "$ref": "#/components/schemas/PayoutStatus"
          },
          "settlementType": {
            "$ref": "#/components/schemas/SettlementType"
          },
          "failureReason": {
            "type": "string"
          },
          "openingBalance": {
            "type": "integer",
            "format": "int64"
          },
          "closingBalance": {
            "type": "integer",
            "format": "int64"
          },
          "payoutAmount": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "PersonalDetails": {
        "title": "PersonalDetails",
        "description": "If the delegate is one of the UBOs of the business associated with the organisation customer, this contains the UBO's known identity data.",
        "type": "object",
        "required": [
          "familyName",
          "address"
        ],
        "properties": {
          "givenName": {
            "description": "The person's given name",
            "type": "string"
          },
          "middleName": {
            "description": "The person's middle name",
            "type": "string"
          },
          "familyName": {
            "description": "The person's family name",
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/ComponentisedAddress",
            "description": "The person's address"
          }
        }
      },
      "PlanPayment": {
        "title": "PlanPayment",
        "type": "object",
        "required": [
          "PlanPayment"
        ],
        "properties": {
          "PlanPayment": {
            "$ref": "#/components/schemas/PlanPayment1"
          }
        }
      },
      "PlanPayment1": {
        "title": "PlanPayment",
        "type": "object",
        "required": [
          "variant"
        ],
        "properties": {
          "variant": {
            "$ref": "#/components/schemas/PayPlanVariant"
          }
        }
      },
      "ProductType": {
        "title": "ProductType",
        "type": "string",
        "enum": [
          "CP",
          "CN"
        ]
      },
      "PurchaseDetails": {
        "title": "PurchaseDetails",
        "type": "object",
        "required": [
          "orderId",
          "merchantId",
          "referenceOrderId",
          "amount",
          "surchargeAmount",
          "refundedAmount",
          "merchantName",
          "transactionId",
          "orderType",
          "payType",
          "status",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "orderId": {
            "description": "System unique identifier for the order.",
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "System unique identifier for the merchant the order was created for.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "referenceOrderId": {
            "description": "A reference provided by the merchant to identify this order, such as an order number.",
            "examples": [
              "ORD-12411"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The order amount including any surcharge passed on to the customer."
          },
          "surchargeAmount": {
            "description": "The amount in minor currency units that was surcharged to the customer.",
            "type": "integer",
            "format": "int64"
          },
          "refundedAmount": {
            "description": "The amount in minor currency units that has been refunded to the customer.",
            "type": "integer",
            "format": "int64"
          },
          "merchantName": {
            "description": "Business name of the merchant the order is associated with.",
            "type": "string"
          },
          "transactionId": {
            "description": "System unique identifier for the transaction representing this payment.",
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          },
          "referenceTransactionId": {
            "description": "A reference provided by the merchant to identify this transaction.",
            "type": "string"
          },
          "orderType": {
            "$ref": "#/components/schemas/OrderType"
          },
          "payType": {
            "$ref": "#/components/schemas/PayType1"
          },
          "description": {
            "description": "A free text description of the order.",
            "type": "string"
          },
          "orderMetadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata passed in when creating the order."
          },
          "status": {
            "$ref": "#/components/schemas/TransactionStatus",
            "description": "\nThese are the statuses returned by the order payment API and the values displayed when merchant integrators retrieve (GET) a transaction via the API.\n\nNote: our dashboards in most cases map these statuses to different values, but only for display purposes.\n\n* **accepted**           - This payment was accepted by the customer but the payment method is asynchronous (e.g.: Direct Debit, Bank Transfer),\n                           so we have to wait for the final result before we move it to either **paid** or **failed**.\n* **paid**               - This payment is successful and funds have been collected.\n* **pending**            - This payment is successful, funds have been collected from the customer, but they are pending being transferred to the merchants balance.\n                           This status is currently only used by PayPlan's since we delay the transfer of funds into a merchants balance.\n* **refunded**           - A full refund has been initiated on this payment.\n* **partially_refunded** -\tA partial refund of the original payment amount has been initiated on this payment.\n* **failed**             -\tThe attempt to collect funds from the payment method was not successful.\n* **cancelled**          - This payment has been cancelled.\n* **disputed**           - At least one charge on the payment method has been disputed.\n* **not_captured**       - The payment method has been authorised but funds are not yet captured.\n* **incomplete**         -\tThis payment has not been completed by the customer. Currently, a transaction is only incomplete if 3DS authentication has not yet been completed.\n                           If the customer does not complete the authentication, the transaction will stay in this state.\n"
          },
          "refundIds": {
            "description": "A list of refund system unique identifiers issued against this transaction.",
            "type": "array",
            "items": {
              "examples": [
                "rfnd_eb9NpWDck2xM7q5m"
              ],
              "type": "string"
            }
          },
          "disputeId": {
            "description": "System unique identifier for a dispute raised against this transaction, if any.",
            "deprecated": true,
            "examples": [
              "dispute_yupH-ghKhRK74Vm2"
            ],
            "type": "string"
          },
          "disputeIds": {
            "description": "System unique identifiers for any disputes raised against this transaction.",
            "type": "array",
            "items": {
              "examples": [
                "dispute_yupH-ghKhRK74Vm2"
              ],
              "type": "string"
            }
          },
          "paidOn": {
            "description": "The day the payment was settled with the merchant. Only set after a successful payout.",
            "type": "string",
            "format": "date"
          },
          "availableOn": {
            "description": "The day this payment will be available for payout to the merchant.",
            "type": "string",
            "format": "date"
          },
          "parentTransactionId": {
            "$ref": "#/components/schemas/ParentTransactionId",
            "description": "If linked to a another transaction, this can be set here."
          },
          "referenceIssuerTransactionId": {
            "description": "If this transaction runs as a closed loop transaction, this will provide the corresponding IssuerTransactionId",
            "examples": [
              "itxn_pfWW83vesouNmmHB"
            ],
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "Purpose": {
        "title": "Purpose",
        "description": "Purpose of the payment. If not specified `retail` will be used by default",
        "type": "string",
        "enum": [
          "Mortgage",
          "Utility",
          "Loan",
          "DependantSupport",
          "Gambling",
          "Retail",
          "Salary",
          "Personal",
          "Government",
          "Pension",
          "Tax",
          "Other"
        ]
      },
      "Rail": {
        "title": "Rail",
        "type": "object",
        "required": [
          "Rail"
        ],
        "properties": {
          "Rail": {
            "$ref": "#/components/schemas/Rail1"
          }
        }
      },
      "Rail1": {
        "title": "Rail",
        "type": "object",
        "required": [
          "dbi",
          "passengerName",
          "departureDate",
          "departureCity",
          "destinationCity",
          "railClass"
        ],
        "properties": {
          "dbi": {
            "$ref": "#/components/schemas/DescriptiveBillingInformation"
          },
          "passengerName": {
            "description": "Passenger name between 1 and 45 alphanumeric characters long.",
            "type": "string"
          },
          "departureDate": {
            "description": "Departure date.",
            "type": "string",
            "format": "date"
          },
          "departureCity": {
            "description": "Departure city between 1 and 13 alphanumeric characters long.",
            "type": "string"
          },
          "destinationCity": {
            "description": "Destination city between 1 and 13 alphanumeric characters long.",
            "type": "string"
          },
          "railClass": {
            "$ref": "#/components/schemas/RailClass"
          }
        }
      },
      "RailClass": {
        "title": "RailClass",
        "description": "Rail class.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Business1"
          },
          {
            "$ref": "#/components/schemas/Economy1"
          },
          {
            "$ref": "#/components/schemas/First1"
          },
          {
            "$ref": "#/components/schemas/Other3"
          }
        ]
      },
      "RandomPan": {
        "title": "RandomPan",
        "type": "object"
      },
      "RedactedCardCreationDetailsDto": {
        "title": "RedactedCardCreationDetailsDto",
        "type": "object",
        "required": [
          "digitalCreditCardId",
          "redactedPan",
          "brand",
          "cardHolderName",
          "validFrom",
          "validTo",
          "expiry",
          "createdAt",
          "creator",
          "status",
          "metadata"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "redactedPan": {
            "type": "string"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBrand"
          },
          "cardHolderName": {
            "type": "string"
          },
          "emailAddress": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "expiry": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The transaction limit for the card - the largest amount chargeable on a single transaction."
          },
          "cardLimit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The card limit for the card - the maximum amount that can be outstanding on the card at any time."
          },
          "availableBalance": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "For cards with a card limit, the current balance on the card."
          },
          "createdAt": {
            "description": "Creation timestamp of the card",
            "type": "string",
            "format": "date-time"
          },
          "creator": {
            "description": "Creator of the card",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/DerivedCardStatus",
            "description": "Status of the card"
          },
          "usage": {
            "$ref": "#/components/schemas/CardUsage",
            "description": "Mode of use of the card - defaults to single use"
          },
          "currencies": {
            "description": "Currencies that the card is allowed to be used for; empty list means no restrictions",
            "type": "array",
            "items": {
              "description": "ISO 4217 3 Digits Currency code",
              "type": "string"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "RedactedCardDetails": {
        "title": "RedactedCardDetails",
        "type": "object",
        "required": [
          "digitalCreditCardId",
          "redactedPan",
          "cardBrand",
          "bin",
          "last4",
          "cardHolderName",
          "validFrom",
          "validTo",
          "expiry",
          "createdAt",
          "creator",
          "status",
          "metadata"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "redactedPan": {
            "type": "string"
          },
          "cardBrand": {
            "$ref": "#/components/schemas/CardBrand"
          },
          "bin": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          },
          "cardHolderName": {
            "type": "string"
          },
          "emailAddress": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "expiry": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "cardLimit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "availableBalance": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "creator": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/DerivedCardStatus"
          },
          "usage": {
            "$ref": "#/components/schemas/CardUsage"
          },
          "currencies": {
            "type": "array",
            "items": {
              "description": "ISO 4217 3 Digits Currency code",
              "type": "string"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "Refund": {
        "title": "Refund",
        "type": "object",
        "required": [
          "refundId",
          "amount",
          "createdAt"
        ],
        "properties": {
          "refundId": {
            "description": "System unique identifier for the refund.",
            "examples": [
              "rfnd_eb9NpWDck2xM7q5m"
            ],
            "type": "string"
          },
          "amount": {
            "description": "How much was refunded **in minor currency units**.",
            "type": "integer",
            "format": "int64"
          },
          "createdAt": {
            "description": "When the refund was created.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "RefundResponse": {
        "title": "RefundResponse",
        "type": "object",
        "required": [
          "refundId",
          "transactionId",
          "transactionAmount",
          "orderId",
          "referenceOrderId",
          "amount",
          "refundedAt"
        ],
        "properties": {
          "refundId": {
            "description": "System unique identifier for the refund.",
            "examples": [
              "rfnd_eb9NpWDck2xM7q5m"
            ],
            "type": "string"
          },
          "transactionId": {
            "description": "System unique identifier for the transaction representing this payment.",
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          },
          "transactionAmount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "The full transaction amount."
          },
          "orderId": {
            "description": "System unique identifier for the order.",
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          },
          "referenceOrderId": {
            "description": "A reference provided by the merchant to identify this order, such as an order number.",
            "examples": [
              "ORD-12411"
            ],
            "type": "string"
          },
          "description": {
            "description": "A free text description of the order.",
            "type": "string"
          },
          "orderMetadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Metadata passed in when creating the order."
          },
          "customerId": {
            "description": "System unique identifier for the customer.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "customerEmailAddress": {
            "description": "Email address of the customer.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "customerName": {
            "description": "Full name of the customer.",
            "type": "string"
          },
          "customerPhoneNumber": {
            "description": "Phone number of the customer.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The refunded amount **in minor currency units**"
          },
          "payoutId": {
            "description": "System unique identifier for the payout this refund was included in.",
            "examples": [
              "payout_BNxPPbDh1c7XCUgt"
            ],
            "type": "string"
          },
          "settlementDate": {
            "description": "When the payout this refund was included in will be settled.",
            "type": "string",
            "format": "date"
          },
          "refundedAt": {
            "description": "When the refund was issued.",
            "type": "string",
            "format": "date-time"
          },
          "refundIssuedBy": {
            "description": "Who issued the refund.",
            "type": "string"
          }
        }
      },
      "RegisterApplePayDetails": {
        "title": "RegisterApplePayDetails",
        "type": "object",
        "required": [
          "RegisterApplePayDetails"
        ],
        "properties": {
          "RegisterApplePayDetails": {
            "$ref": "#/components/schemas/RegisterApplePayDetails1"
          }
        }
      },
      "RegisterApplePayDetails1": {
        "title": "RegisterApplePayDetails",
        "description": "Register a merchant and its corresponding set of fully qualified domains for ApplePay.",
        "type": "object",
        "required": [
          "domainNames"
        ],
        "properties": {
          "domainNames": {
            "description": "A list of fully qualified domain names for which Apple Pay will process payments for this merchant. Items must be unique. The API is limited to 99 domain names per request.",
            "type": "array",
            "minItems": 1,
            "items": {
              "type": "string"
            }
          }
        }
      },
      "RemoveBlockOnCard": {
        "title": "RemoveBlockOnCard",
        "type": "object",
        "required": [
          "RemoveBlockOnCard"
        ],
        "properties": {
          "RemoveBlockOnCard": {
            "$ref": "#/components/schemas/RemoveBlockOnCard1"
          }
        }
      },
      "RemoveBlockOnCard1": {
        "title": "RemoveBlockOnCard",
        "description": "Remove a block on a card.",
        "type": "object"
      },
      "RemoveSurchargeConfig": {
        "title": "RemoveSurchargeConfig",
        "type": "object",
        "required": [
          "RemoveSurchargeConfig"
        ],
        "properties": {
          "RemoveSurchargeConfig": {
            "$ref": "#/components/schemas/RemoveSurchargeConfig1"
          }
        }
      },
      "RemoveSurchargeConfig1": {
        "title": "RemoveSurchargeConfig",
        "description": "Remove any surcharging rules currently applied to the merchant's payments.",
        "type": "object"
      },
      "ResultNotAvailableError": {
        "title": "ResultNotAvailableError",
        "type": "object"
      },
      "ReverseFundsTransfer": {
        "title": "ReverseFundsTransfer",
        "type": "object",
        "required": [
          "ReverseFundsTransfer"
        ],
        "properties": {
          "ReverseFundsTransfer": {
            "$ref": "#/components/schemas/ReverseFundsTransfer1"
          }
        }
      },
      "ReverseFundsTransfer1": {
        "title": "ReverseFundsTransfer",
        "description": "Reverse a transaction transfer back to the original sub-merchant.",
        "type": "object",
        "required": [
          "sourceMerchantId",
          "reverseAmount",
          "reverseLevy"
        ],
        "properties": {
          "sourceMerchantId": {
            "description": "The merchant to reverse the funds from. Must be a sub-merchant that was previously transferred funds for this transaction.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "reverseAmount": {
            "description": "The amount **in minor currency units** that needs reversing.",
            "type": "integer",
            "format": "int64"
          },
          "reverseLevy": {
            "description": "If `true`, the levy (fee) will be proportionally reversed for this transfer reversal.",
            "type": "boolean"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "This can be used to associate any metadata to this transfer reversal."
          }
        }
      },
      "Role": {
        "title": "Role",
        "type": "string",
        "enum": [
          "Executive",
          "Owner",
          "Director"
        ]
      },
      "Rule": {
        "title": "Rule",
        "type": "object",
        "required": [
          "criterion",
          "action"
        ],
        "properties": {
          "criterion": {
            "$ref": "#/components/schemas/RuleCriterion"
          },
          "action": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/RuleAction"
            }
          }
        }
      },
      "RuleAction": {
        "title": "RuleAction",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Allow"
          },
          {
            "$ref": "#/components/schemas/Disallow"
          },
          {
            "$ref": "#/components/schemas/ImposePlatformFee"
          },
          {
            "$ref": "#/components/schemas/SurchargeExplicitFee"
          },
          {
            "$ref": "#/components/schemas/SurchargePlatformFee"
          },
          {
            "$ref": "#/components/schemas/SurchargeScaledPlatformFee"
          }
        ]
      },
      "RuleCriterion": {
        "title": "RuleCriterion",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Always"
          },
          {
            "$ref": "#/components/schemas/And"
          },
          {
            "$ref": "#/components/schemas/ForBinGroups"
          },
          {
            "$ref": "#/components/schemas/ForCardBrand"
          },
          {
            "$ref": "#/components/schemas/ForCardFunding"
          },
          {
            "$ref": "#/components/schemas/ForCardPrepaid"
          },
          {
            "$ref": "#/components/schemas/ForCurrency"
          },
          {
            "$ref": "#/components/schemas/ForCustomerType"
          },
          {
            "$ref": "#/components/schemas/ForIssueCountry"
          },
          {
            "$ref": "#/components/schemas/ForPayPlanVariant"
          },
          {
            "$ref": "#/components/schemas/ForPayType"
          },
          {
            "$ref": "#/components/schemas/ForPaymentMethodType"
          },
          {
            "$ref": "#/components/schemas/ForProductType"
          },
          {
            "$ref": "#/components/schemas/ForSchemeProduct"
          },
          {
            "$ref": "#/components/schemas/Not"
          },
          {
            "$ref": "#/components/schemas/Or"
          }
        ]
      },
      "SavedCardToken": {
        "title": "SavedCardToken",
        "type": "object",
        "required": [
          "SavedCardToken"
        ],
        "properties": {
          "SavedCardToken": {
            "$ref": "#/components/schemas/SavedCardToken1"
          }
        }
      },
      "SavedCardToken1": {
        "title": "SavedCardToken",
        "description": "**DEPRECATED:** Use generalised case (`SavedPaymentSourceToken`) instead",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "paymentSourceId",
          "expiryDate",
          "last4",
          "brand",
          "bin",
          "funding"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "paymentSourceId": {
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "last4": {
            "type": "string"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding1"
          },
          "bin": {
            "type": "string"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding2"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "SavedPaymentSource": {
        "title": "SavedPaymentSource",
        "description": "Payment method is via a saved payment source.",
        "type": "object",
        "required": [
          "paymentSourceId"
        ],
        "properties": {
          "paymentSourceId": {
            "description": "The id of the saved payment source.",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          }
        }
      },
      "SavedPaymentSource1": {
        "title": "SavedPaymentSource",
        "type": "object",
        "required": [
          "SavedPaymentSource"
        ],
        "properties": {
          "SavedPaymentSource": {
            "$ref": "#/components/schemas/SavedPaymentSource2"
          }
        }
      },
      "SavedPaymentSource2": {
        "title": "SavedPaymentSource",
        "description": "Payment method is via a saved payment source.",
        "type": "object",
        "required": [
          "paymentSourceId"
        ],
        "properties": {
          "paymentSourceId": {
            "description": "The id of the saved payment source.",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          }
        }
      },
      "SavedPaymentSource3": {
        "title": "SavedPaymentSource",
        "type": "object",
        "required": [
          "paymentSourceId"
        ],
        "properties": {
          "paymentSourceId": {
            "description": "System unique identifier for the initial payment method used for the pay plan.",
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "cvc": {
            "description": "Optional CVC.",
            "type": "string"
          }
        }
      },
      "SavedPaymentSourceMethodResp": {
        "title": "SavedPaymentSourceMethodResp",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CardMethodResp"
          },
          {
            "$ref": "#/components/schemas/DirectDebitMethodResp"
          },
          {
            "$ref": "#/components/schemas/PayToMethodResp"
          }
        ]
      },
      "SavedPaymentSourceToken": {
        "title": "SavedPaymentSourceToken",
        "type": "object",
        "required": [
          "SavedPaymentSourceToken"
        ],
        "properties": {
          "SavedPaymentSourceToken": {
            "$ref": "#/components/schemas/SavedPaymentSourceToken1"
          }
        }
      },
      "SavedPaymentSourceToken1": {
        "title": "SavedPaymentSourceToken",
        "type": "object",
        "required": [
          "paymentTokenId",
          "amount",
          "surchargeAmount",
          "paymentSourceId",
          "savedPaymentSource"
        ],
        "properties": {
          "paymentTokenId": {
            "examples": [
              "ptkn_6V356spkqmZ0dkUU"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "surchargeAmount": {
            "type": "integer",
            "format": "int64"
          },
          "paymentSourceId": {
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          },
          "savedPaymentSource": {
            "$ref": "#/components/schemas/TokenSavedPaymentSource"
          }
        }
      },
      "ScheduleEntry": {
        "title": "ScheduleEntry",
        "type": "object",
        "required": [
          "at",
          "amount"
        ],
        "properties": {
          "at": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "SchemeProduct": {
        "title": "SchemeProduct",
        "type": "string",
        "enum": [
          "AC000",
          "ACMCW",
          "ACMCY",
          "ACMNW",
          "AS000",
          "AX000",
          "BC000",
          "BCVIY",
          "DC000",
          "DCCC0",
          "DCCDI",
          "DCCPE",
          "DCDC0",
          "DCDPE",
          "DE000",
          "DECOM",
          "DM000",
          "DMCOM",
          "DMMCY",
          "EFTP1",
          "EFTP2",
          "JC000",
          "JCCC0",
          "JCCDI",
          "JCCPE",
          "JCDC0",
          "JCDPE",
          "KF000",
          "LS000",
          "OD000",
          "PE000",
          "PECRE",
          "PEVIY",
          "PM000",
          "PMCOM",
          "PMDOM",
          "PMINC",
          "PMINP",
          "SC000",
          "SE000",
          "VP002",
          "VPMCB",
          "VPMCF",
          "VPMCO",
          "VPMCP",
          "VPMCX",
          "VPVIB",
          "VPVID",
          "VPVIR",
          "VPVIS",
          "VPVIX",
          "UATP0"
        ]
      },
      "SendAgreementRequest": {
        "title": "SendAgreementRequest",
        "type": "object",
        "required": [
          "customerName",
          "customerAccIdentifier",
          "terms"
        ],
        "properties": {
          "customerName": {
            "description": "Name associated to the account to be charged",
            "type": "string"
          },
          "customerAccIdentifier": {
            "$ref": "#/components/schemas/AccountIdentifier"
          },
          "terms": {
            "$ref": "#/components/schemas/AgreementRequestTerms"
          },
          "purpose": {
            "$ref": "#/components/schemas/Purpose"
          }
        }
      },
      "SendAgreementResponse": {
        "title": "SendAgreementResponse",
        "type": "object",
        "required": [
          "token"
        ],
        "properties": {
          "token": {
            "type": "string"
          }
        }
      },
      "ServiceFees": {
        "title": "ServiceFees",
        "description": "**Restricted field** - only included if caller has access.",
        "type": "object",
        "required": [
          "variableAmount",
          "fixedAmount",
          "taxAmount",
          "totalAmount"
        ],
        "properties": {
          "variableAmount": {
            "type": "integer",
            "format": "int64"
          },
          "fixedAmount": {
            "type": "integer",
            "format": "int64"
          },
          "taxAmount": {
            "type": "integer",
            "format": "int64"
          },
          "totalAmount": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "ServiceProviderMerchant": {
        "title": "ServiceProviderMerchant",
        "type": "object",
        "required": [
          "ServiceProviderMerchant"
        ],
        "properties": {
          "ServiceProviderMerchant": {
            "$ref": "#/components/schemas/ServiceProviderMerchant1"
          }
        }
      },
      "ServiceProviderMerchant1": {
        "title": "ServiceProviderMerchant",
        "type": "object",
        "required": [
          "merchantId",
          "businessProfile",
          "readableIdentifier",
          "status",
          "payPlanSettings",
          "publicToken",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "merchantId": {
            "description": "System unique identifier for a merchant",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "description": "For sub-merchants, this is the system unique identifier for the marketplace they are a member of.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "businessProfile": {
            "$ref": "#/components/schemas/BusinessProfile"
          },
          "referenceMerchantId": {
            "description": "A unique string for this merchant, such as your primary key.",
            "type": "string"
          },
          "readableIdentifier": {
            "description": "Unique URL used for dashboards. Must be 4-255 characters, lowercase, alphanumeric without any special characters such as ! @ # & ( ) – [ ] : ; ‘, ? /.",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/MerchantDashboardStatus"
          },
          "payoutDetails": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "object",
            "required": [
              "payoutSettings",
              "payoutSchedule",
              "payoutDelayDays",
              "payoutExpediteNonBusinessDays",
              "automatedPayoutsEnabled",
              "automatedDisbursementsEnabled",
              "payoutStatus"
            ],
            "properties": {
              "payoutSettings": {
                "$ref": "#/components/schemas/PayoutSettings"
              },
              "payoutSchedule": {
                "description": "Frequency of payouts to the merchant. One of 'daily', 'weekly' or 'monthly'.",
                "type": "string"
              },
              "payoutDelayDays": {
                "description": "Number of business days between payment completion and settlement.",
                "type": "integer",
                "format": "int32"
              },
              "payoutExpediteNonBusinessDays": {
                "description": "If true, non business days are included in payouts for the previous business day. Otherwise include them in payouts for the next business day.",
                "type": "boolean"
              },
              "dayOfWeek": {
                "$ref": "#/components/schemas/DayOfWeek",
                "description": "For weekly and fortnightly payouts, the day of week the payout is created."
              },
              "dayOfMonth": {
                "description": "For monthly payouts, the day of the month the payout is created.",
                "type": "integer",
                "format": "int32"
              },
              "automatedPayoutsEnabled": {
                "description": "If true, any available balance is automatically paid out to the merchant according to the payout schedule. If false, payouts are manually initiated by the merchant.",
                "type": "boolean"
              },
              "automatedDisbursementsEnabled": {
                "description": "If true, payouts with be disbursed by the system. If false, payouts will not disbursed by the system, with the assumption they will be done manually.",
                "type": "boolean"
              },
              "payoutDefaultStatementDescriptor": {
                "description": "Default value to use for the statement descriptor on merchant payouts.",
                "type": "string"
              },
              "payoutStatus": {
                "$ref": "#/components/schemas/MerchantPayoutStatus",
                "description": "Whether payouts are enabled for this merchant."
              }
            }
          },
          "billingDetails": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "object",
            "required": [
              "billingNotificationsEnabled",
              "billingAddress"
            ],
            "properties": {
              "billingNotificationEmails": {
                "description": "List of email addresses that will receive an invoice whenever a billing invoice has been generated for a gross settlement merchant.",
                "type": "array",
                "items": {
                  "examples": [
                    "lucy.diamond@star.com"
                  ],
                  "type": "string"
                }
              },
              "billingNotificationsEnabled": {
                "description": "Toggle for whether to send invoice emails. Note even if `false`, late payment reminders will still be sent.",
                "type": "boolean"
              },
              "billingAddress": {
                "$ref": "#/components/schemas/BusinessAddress",
                "description": "Billing address for the merchant as it will appear on fee invoices for gross settlement merchants."
              },
              "billingPaymentSourceId": {
                "description": "The system identifier for the primary payment source used for paying for April fee related invoices.",
                "examples": [
                  "psrc_CE5VL9B5aRE8kF8D"
                ],
                "type": "string"
              }
            }
          },
          "bankAccounts": {
            "description": "List of bank accounts associated with this merchant. Payouts are paid into the primary bank account for each currency.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankAccountDetails"
            }
          },
          "bankAccountVerificationResult": {
            "$ref": "#/components/schemas/AccountVerificationResponseDto"
          },
          "payPlanSettings": {
            "$ref": "#/components/schemas/PayPlanSettings"
          },
          "publicToken": {
            "description": "Your public or publishable API Key is used for all outgoing communications from the frontend of your website and checkout page.",
            "type": "string"
          },
          "sourceRules": {
            "description": "The rules that configure payment sources for the merchant. Rules include surcharging, platform fee (FUTURE), etc.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Rule"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Marketplace specific additional data associated with this merchant."
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "ServiceTokenResponse": {
        "title": "ServiceTokenResponse",
        "type": "object",
        "required": [
          "serviceTokenId",
          "description",
          "tokenType",
          "status",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "serviceTokenId": {
            "description": "Service token system identifier",
            "examples": [
              "key_LHDhK3oGRvkiefQn"
            ],
            "type": "string"
          },
          "description": {
            "description": "Description for this service token",
            "type": "string"
          },
          "tokenType": {
            "$ref": "#/components/schemas/TokenType"
          },
          "tokenValue": {
            "description": "Value of the service token. For marketplace API keys, this is only populated on creation and will be null in all subsequent retrievals for security reasons.",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "expiresAt": {
            "description": "When this security token will expire and no longer be valid. If null, this token does not expire.",
            "type": "string",
            "format": "date-time"
          },
          "createdBy": {
            "description": "Who or what created this token. If null, this token was generated by the system.",
            "type": "string"
          },
          "createdAt": {
            "description": "When this service token was created.",
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "description": "When this service token was last modified.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "SetMerchantBillingPaymentSource": {
        "title": "SetMerchantBillingPaymentSource",
        "type": "object",
        "required": [
          "SetMerchantBillingPaymentSource"
        ],
        "properties": {
          "SetMerchantBillingPaymentSource": {
            "$ref": "#/components/schemas/SetMerchantBillingPaymentSource1"
          }
        }
      },
      "SetMerchantBillingPaymentSource1": {
        "title": "SetMerchantBillingPaymentSource",
        "description": "Update the billing payment source for a merchant. The billing payments source is used for automated settlement of fees for gross settlement merchants.",
        "type": "object",
        "properties": {
          "paymentSourceId": {
            "examples": [
              "psrc_CE5VL9B5aRE8kF8D"
            ],
            "type": "string"
          }
        }
      },
      "SetMerchantPrimaryBankAccount": {
        "title": "SetMerchantPrimaryBankAccount",
        "type": "object",
        "required": [
          "SetMerchantPrimaryBankAccount"
        ],
        "properties": {
          "SetMerchantPrimaryBankAccount": {
            "$ref": "#/components/schemas/SetMerchantPrimaryBankAccount1"
          }
        }
      },
      "SetMerchantPrimaryBankAccount1": {
        "title": "SetMerchantPrimaryBankAccount",
        "description": "Update the primary bank account for a merchant. The primary bank account is where payouts are deposited into.",
        "type": "object",
        "required": [
          "accountId"
        ],
        "properties": {
          "accountId": {
            "examples": [
              "xacc_sWY5yPi9OQH31jMA"
            ],
            "type": "string"
          }
        }
      },
      "SetSurchargeConfig": {
        "title": "SetSurchargeConfig",
        "type": "object",
        "required": [
          "SetSurchargeConfig"
        ],
        "properties": {
          "SetSurchargeConfig": {
            "$ref": "#/components/schemas/SetSurchargeConfig1"
          }
        }
      },
      "SetSurchargeConfig1": {
        "title": "SetSurchargeConfig",
        "description": "Set the surcharging rules to be applied to the merchant's payments.",
        "type": "object",
        "required": [
          "fallback"
        ],
        "properties": {
          "surchargeRules": {
            "description": "A list of surcharge conditions to be applied; specify empty array to disable surcharging.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SurchargeRule"
            }
          },
          "fallback": {
            "$ref": "#/components/schemas/SurchargeBy",
            "description": "Fallback surcharge rule that is used if none of `surchargeRules` rules applies; specify fixedAmount = 0 and variablePercentage = 0 to disable surcharging."
          }
        }
      },
      "SettlementConfiguration": {
        "title": "SettlementConfiguration",
        "type": "string",
        "enum": [
          "default",
          "standard",
          "realtime_preferred",
          "realtime_required"
        ]
      },
      "SettlementCsvColumn": {
        "title": "SettlementCsvColumn",
        "type": "string",
        "enum": [
          "CardHolderName",
          "CardNumber",
          "EntryDate",
          "EntryTimestamp",
          "EntryType",
          "EntryDescription",
          "SettlementDate",
          "TransactionType",
          "OrderType",
          "OrderId",
          "OrderDescription",
          "MerchantOrderId",
          "MerchantId",
          "MerchantName",
          "BillingCategory",
          "TransactionId",
          "TransactionAmount",
          "RefundId",
          "PayoutId",
          "ReferencePayoutId",
          "Currency",
          "NetAmount",
          "GrossAmount",
          "PlatformFeesInclTax",
          "PlatformFeesTax"
        ]
      },
      "SettlementReport": {
        "title": "SettlementReport",
        "type": "object",
        "required": [
          "currency",
          "totalPages",
          "totalRecords",
          "platformFeesInclTax",
          "platformFeesTax",
          "netAmount",
          "grossAmount",
          "created"
        ],
        "properties": {
          "currency": {
            "description": "ISO 4217 3 Digits Currency code",
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SettlementReportEntry"
            }
          },
          "totalPages": {
            "type": "integer",
            "format": "int64"
          },
          "totalRecords": {
            "type": "integer",
            "format": "int64"
          },
          "platformFeesInclTax": {
            "type": "integer",
            "format": "int64"
          },
          "platformFeesTax": {
            "type": "integer",
            "format": "int64"
          },
          "netAmount": {
            "type": "integer",
            "format": "int64"
          },
          "grossAmount": {
            "type": "integer",
            "format": "int64"
          },
          "payoutSummary": {
            "$ref": "#/components/schemas/PayoutSummary1"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "SettlementReportEntry": {
        "title": "SettlementReportEntry",
        "type": "object",
        "required": [
          "entryDate",
          "entryTimestamp",
          "entryType",
          "merchantId",
          "merchantName",
          "currency",
          "netAmount",
          "grossAmount",
          "platformFeesInclTax",
          "platformFeesTax",
          "customFieldValues"
        ],
        "properties": {
          "cardHolderName": {
            "type": "string"
          },
          "cardNumber": {
            "type": "string"
          },
          "entryDate": {
            "type": "string",
            "format": "date"
          },
          "entryTimestamp": {
            "type": "string",
            "format": "date-time"
          },
          "entryType": {
            "$ref": "#/components/schemas/EntryType"
          },
          "entryDescription": {
            "type": "string"
          },
          "settlementDate": {
            "type": "string",
            "format": "date"
          },
          "transactionType": {
            "type": "string"
          },
          "orderType": {
            "$ref": "#/components/schemas/OrderType1"
          },
          "orderId": {
            "type": "string"
          },
          "orderDescription": {
            "type": "string"
          },
          "orderMetadata": {
            "$ref": "#/components/schemas/JsonObject"
          },
          "merchantOrderId": {
            "examples": [
              "ordr_TnGzKCAzWWBORoxy"
            ],
            "type": "string"
          },
          "merchantId": {
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "merchantName": {
            "type": "string"
          },
          "transactionId": {
            "examples": [
              "tran_lQ7O7gJSaJmJNnXv"
            ],
            "type": "string"
          },
          "transactionAmount": {
            "type": "integer",
            "format": "int64"
          },
          "billingCategory": {
            "type": "string"
          },
          "refundId": {
            "examples": [
              "rfnd_eb9NpWDck2xM7q5m"
            ],
            "type": "string"
          },
          "payoutId": {
            "examples": [
              "payout_BNxPPbDh1c7XCUgt"
            ],
            "type": "string"
          },
          "referencePayoutId": {
            "type": "string"
          },
          "currency": {
            "description": "ISO 4217 3 Digits Currency code",
            "type": "string"
          },
          "netAmount": {
            "type": "integer",
            "format": "int64"
          },
          "grossAmount": {
            "type": "integer",
            "format": "int64"
          },
          "platformFeesInclTax": {
            "type": "integer",
            "format": "int64"
          },
          "platformFeesTax": {
            "type": "integer",
            "format": "int64"
          },
          "customFieldValues": {
            "$ref": "#/components/schemas/Map_V"
          }
        }
      },
      "SettlementType": {
        "title": "SettlementType",
        "type": "string",
        "enum": [
          "Net",
          "Gross"
        ]
      },
      "SgBankAccountIdentifier": {
        "title": "SgBankAccountIdentifier",
        "type": "object",
        "required": [
          "SgBankAccountIdentifier"
        ],
        "properties": {
          "SgBankAccountIdentifier": {
            "$ref": "#/components/schemas/SgBankAccountIdentifier1"
          }
        }
      },
      "SgBankAccountIdentifier1": {
        "title": "SgBankAccountIdentifier",
        "type": "object",
        "required": [
          "accountNumber"
        ],
        "properties": {
          "accountNumber": {
            "description": "Account number, 9-12 digits.",
            "type": "string"
          }
        }
      },
      "Shipping": {
        "title": "Shipping",
        "type": "object",
        "required": [
          "address",
          "name"
        ],
        "properties": {
          "amount": {
            "description": "Cost of the shipping in minor currency units",
            "type": "integer",
            "format": "int64"
          },
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "carrier": {
            "description": "Name of the carrier delivering the order",
            "type": "string"
          },
          "name": {
            "description": "Name of the recipient of the order",
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number of the recipient of the order",
            "type": "string"
          },
          "trackingNumber": {
            "description": "Carrier specific tracking number for the shipment.",
            "type": "string"
          }
        }
      },
      "SignInConsumer": {
        "title": "SignInConsumer",
        "type": "object",
        "required": [
          "SignInConsumer"
        ],
        "properties": {
          "SignInConsumer": {
            "$ref": "#/components/schemas/SignInConsumer1"
          }
        }
      },
      "SignInConsumer1": {
        "title": "SignInConsumer",
        "description": "Sign in on behalf of a B2C consumer customer.",
        "type": "object",
        "required": [
          "customerId"
        ],
        "properties": {
          "customerId": {
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          }
        }
      },
      "SignInDelegate": {
        "title": "SignInDelegate",
        "type": "object",
        "required": [
          "SignInDelegate"
        ],
        "properties": {
          "SignInDelegate": {
            "$ref": "#/components/schemas/SignInDelegate1"
          }
        }
      },
      "SignInDelegate1": {
        "title": "SignInDelegate",
        "description": "Sign in on behalf of a B2B customer delegate using a customer identify to target the customer.",
        "type": "object",
        "required": [
          "customerId",
          "delegateEmailAddress"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for the customer",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "delegateEmailAddress": {
            "description": "Email address of the customer delegate.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "delegatePhoneNumber": {
            "description": "Phone number of the customer delegate. Only required if updating the phone number associated with the delegate.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "delegateName": {
            "description": "Name of the customer delegate. Only required if updating the name associated with the delegate.",
            "type": "string"
          },
          "delegatePosition": {
            "description": "Position of the customer delegate within the business. Only required if updating the position associated with the delegate.",
            "type": "string"
          }
        }
      },
      "SignInDelegateByReferenceId": {
        "title": "SignInDelegateByReferenceId",
        "type": "object",
        "required": [
          "SignInDelegateByReferenceId"
        ],
        "properties": {
          "SignInDelegateByReferenceId": {
            "$ref": "#/components/schemas/SignInDelegateByReferenceId1"
          }
        }
      },
      "SignInDelegateByReferenceId1": {
        "title": "SignInDelegateByReferenceId",
        "description": "Sign in on behalf of a B2B customer delegate using a reference customer identifier to target the customer.",
        "type": "object",
        "required": [
          "referenceCustomerId",
          "delegateEmailAddress"
        ],
        "properties": {
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. Must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "delegateEmailAddress": {
            "description": "Email address of the customer delegate.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "delegatePhoneNumber": {
            "description": "Phone number of the customer delegate. Only required if updating the phone number associated with the delegate.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "delegateName": {
            "description": "Name of the customer delegate. Only required if updating the name associated with the delegate.",
            "type": "string"
          },
          "delegatePosition": {
            "description": "Position of the customer delegate within the business. Only required if updating the position associated with the delegate.",
            "type": "string"
          }
        }
      },
      "SignInOnBehalfOfCustomerRequest": {
        "title": "SignInOnBehalfOfCustomerRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/SignInConsumer"
          },
          {
            "$ref": "#/components/schemas/SignInDelegate"
          },
          {
            "$ref": "#/components/schemas/SignInDelegateByReferenceId"
          }
        ]
      },
      "SimulateBankTransfer": {
        "title": "SimulateBankTransfer",
        "type": "object",
        "required": [
          "SimulateBankTransfer"
        ],
        "properties": {
          "SimulateBankTransfer": {
            "$ref": "#/components/schemas/SimulateBankTransfer1"
          }
        }
      },
      "SimulateBankTransfer1": {
        "title": "SimulateBankTransfer",
        "description": "Simulate the successful initiation of a bank transfer.",
        "type": "object",
        "required": [
          "method",
          "amount",
          "description",
          "reference"
        ],
        "properties": {
          "method": {
            "$ref": "#/components/schemas/SimulateBankTransferMethod"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          },
          "description": {
            "type": "string"
          },
          "reference": {
            "type": "string"
          }
        }
      },
      "SimulateBankTransferDeMethod": {
        "title": "SimulateBankTransferDeMethod",
        "type": "object",
        "required": [
          "SimulateBankTransferDeMethod"
        ],
        "properties": {
          "SimulateBankTransferDeMethod": {
            "$ref": "#/components/schemas/SimulateBankTransferDeMethod1"
          }
        }
      },
      "SimulateBankTransferDeMethod1": {
        "title": "SimulateBankTransferDeMethod",
        "type": "object",
        "required": [
          "toBsb",
          "toAccountNumber"
        ],
        "properties": {
          "toBsb": {
            "type": "string"
          },
          "toAccountNumber": {
            "type": "string"
          }
        }
      },
      "SimulateBankTransferMethod": {
        "title": "SimulateBankTransferMethod",
        "oneOf": [
          {
            "$ref": "#/components/schemas/SimulateBankTransferDeMethod"
          },
          {
            "$ref": "#/components/schemas/SimulateBankTransferPayIdMethod"
          }
        ]
      },
      "SimulateBankTransferPayIdMethod": {
        "title": "SimulateBankTransferPayIdMethod",
        "type": "object",
        "required": [
          "SimulateBankTransferPayIdMethod"
        ],
        "properties": {
          "SimulateBankTransferPayIdMethod": {
            "$ref": "#/components/schemas/SimulateBankTransferPayIdMethod1"
          }
        }
      },
      "SimulateBankTransferPayIdMethod1": {
        "title": "SimulateBankTransferPayIdMethod",
        "type": "object",
        "required": [
          "payIdEmail"
        ],
        "properties": {
          "payIdEmail": {
            "type": "string"
          }
        }
      },
      "SimulateEmlAuthorisation": {
        "title": "SimulateEmlAuthorisation",
        "type": "object",
        "required": [
          "SimulateEmlAuthorisation"
        ],
        "properties": {
          "SimulateEmlAuthorisation": {
            "$ref": "#/components/schemas/SimulateEmlAuthorisation1"
          }
        }
      },
      "SimulateEmlAuthorisation1": {
        "title": "SimulateEmlAuthorisation",
        "description": "Simulate an authorisation request from MasterCard via EML.",
        "type": "object",
        "required": [
          "amount",
          "externalAccountId"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "externalAccountId": {
            "type": "string"
          }
        }
      },
      "SimulateEmlClearing": {
        "title": "SimulateEmlClearing",
        "type": "object",
        "required": [
          "SimulateEmlClearing"
        ],
        "properties": {
          "SimulateEmlClearing": {
            "$ref": "#/components/schemas/SimulateEmlClearing1"
          }
        }
      },
      "SimulateEmlClearing1": {
        "title": "SimulateEmlClearing",
        "description": "Simulate a clearing request from MasterCard via EML.",
        "type": "object",
        "required": [
          "amount",
          "externalAccountId",
          "authorisationId"
        ],
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          },
          "externalAccountId": {
            "type": "string"
          },
          "authorisationId": {
            "type": "string"
          }
        }
      },
      "SimulateEmlRefund": {
        "title": "SimulateEmlRefund",
        "type": "object",
        "required": [
          "SimulateEmlRefund"
        ],
        "properties": {
          "SimulateEmlRefund": {
            "$ref": "#/components/schemas/SimulateEmlRefund1"
          }
        }
      },
      "SimulateEmlRefund1": {
        "title": "SimulateEmlRefund",
        "description": "Simulate a refund request from MasterCard via EML.",
        "type": "object",
        "required": [
          "digitalCreditCardId",
          "amount"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/CurrencyAmount",
            "description": "An amount in minor current units of a given currency."
          }
        }
      },
      "SimulatePayPlanEstablished": {
        "title": "SimulatePayPlanEstablished",
        "type": "object",
        "required": [
          "SimulatePayPlanEstablished"
        ],
        "properties": {
          "SimulatePayPlanEstablished": {
            "$ref": "#/components/schemas/SimulatePayPlanEstablished1"
          }
        }
      },
      "SimulatePayPlanEstablished1": {
        "title": "SimulatePayPlanEstablished",
        "description": "Trigger an active pay plan to be established allocating the funds to the merchant and marking the transaction as paid.",
        "type": "object",
        "required": [
          "payPlanId"
        ],
        "properties": {
          "payPlanId": {
            "examples": [
              "plan_ZIeffWuWCgGQl2LZ"
            ],
            "type": "string"
          }
        }
      },
      "SimulatePayPlanInstalment": {
        "title": "SimulatePayPlanInstalment",
        "type": "object",
        "required": [
          "SimulatePayPlanInstalment"
        ],
        "properties": {
          "SimulatePayPlanInstalment": {
            "$ref": "#/components/schemas/SimulatePayPlanInstalment1"
          }
        }
      },
      "SimulatePayPlanInstalment1": {
        "title": "SimulatePayPlanInstalment",
        "description": "Trigger an active pay plan to attempt the next instalment payment.",
        "type": "object",
        "required": [
          "payPlanId"
        ],
        "properties": {
          "payPlanId": {
            "examples": [
              "plan_ZIeffWuWCgGQl2LZ"
            ],
            "type": "string"
          }
        }
      },
      "SimulationRequest": {
        "title": "SimulationRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/EmailRecord"
          },
          {
            "$ref": "#/components/schemas/HandleEmlQueuedWebhookEventsNow"
          },
          {
            "$ref": "#/components/schemas/SimulateBankTransfer"
          },
          {
            "$ref": "#/components/schemas/SimulateEmlAuthorisation"
          },
          {
            "$ref": "#/components/schemas/SimulateEmlClearing"
          },
          {
            "$ref": "#/components/schemas/SimulateEmlRefund"
          },
          {
            "$ref": "#/components/schemas/SimulatePayPlanEstablished"
          },
          {
            "$ref": "#/components/schemas/SimulatePayPlanInstalment"
          }
        ]
      },
      "SimulationResponse": {
        "title": "SimulationResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/EmailRecord"
          },
          {
            "$ref": "#/components/schemas/EmlInvokeClearingOutcome"
          },
          {
            "$ref": "#/components/schemas/EmlInvokeControlpayOutcome"
          },
          {
            "$ref": "#/components/schemas/GeneralJsonOutcome"
          },
          {
            "$ref": "#/components/schemas/NothingToReport"
          }
        ]
      },
      "SourceUsageScope": {
        "title": "SourceUsageScope",
        "description": "Used in the context of a B2B organisation. Whether the saved payment source is available to all delegates of the organisation represented by this customer or only to the delegate user who added the card.",
        "type": "string",
        "enum": [
          "ScopeOrganisation",
          "ScopeDelegate"
        ]
      },
      "Spec": {
        "title": "Spec",
        "oneOf": [
          {
            "$ref": "#/components/schemas/TradingAccountProductSpec"
          }
        ]
      },
      "SppUatpCardProduct": {
        "title": "SppUatpCardProduct",
        "type": "string",
        "enum": [
          "TestCard",
          "Travel",
          "TravelTrade"
        ]
      },
      "StandardMarketplace": {
        "title": "StandardMarketplace",
        "type": "object",
        "required": [
          "marketplaceId",
          "readableIdentifier",
          "businessName",
          "website",
          "companyEmail",
          "companyPhone",
          "merchantDashboardAccessEnabled",
          "marketplaceCustomerUsersEnabled"
        ],
        "properties": {
          "marketplaceId": {
            "description": "System unique identifier for a marketplace.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "readableIdentifier": {
            "description": "Unique URL used for dashboards. Must be 4-255 characters, lowercase, alphanumeric without any special characters such as ! @ # & ( ) – [ ] : ; ‘, ? /.",
            "type": "string"
          },
          "businessName": {
            "description": "Business name (as linked to ABN/ACN).",
            "type": "string"
          },
          "website": {
            "description": "Company website.",
            "type": "string"
          },
          "companyEmail": {
            "description": "Company email address.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "companyPhone": {
            "description": "Company phone number.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "merchantDashboardAccessEnabled": {
            "description": "Indicates whether marketplace merchants are able to access the merchant dashboard.",
            "type": "boolean"
          },
          "marketplaceCustomerUsersEnabled": {
            "description": "Indicates whether the marketplace supports marketplace-level customers.",
            "type": "boolean"
          },
          "bankTransfersDetails": {
            "$ref": "#/components/schemas/BankTransfersDetails"
          },
          "sourceRules": {
            "description": "The rules that configure payment sources for the marketplace. Rules include surcharging, platform fee (FUTURE), etc.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Rule"
            }
          }
        }
      },
      "StandardMerchant": {
        "title": "StandardMerchant",
        "type": "object",
        "required": [
          "StandardMerchant"
        ],
        "properties": {
          "StandardMerchant": {
            "$ref": "#/components/schemas/StandardMerchant1"
          }
        }
      },
      "StandardMerchant1": {
        "title": "StandardMerchant",
        "type": "object",
        "required": [
          "merchantId",
          "businessProfile",
          "readableIdentifier",
          "status",
          "branding",
          "orderNotificationSettings",
          "payPlanSettings",
          "publicToken",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "merchantId": {
            "description": "System unique identifier for a merchant",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "description": "For sub-merchants, this is the system unique identifier for the marketplace they are a member of.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "businessProfile": {
            "$ref": "#/components/schemas/BusinessProfile"
          },
          "referenceMerchantId": {
            "description": "A unique string for this merchant, such as your primary key.",
            "type": "string"
          },
          "readableIdentifier": {
            "description": "Unique URL used for dashboards. Must be 4-255 characters, lowercase, alphanumeric without any special characters such as ! @ # & ( ) – [ ] : ; ‘, ? /.",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/MerchantDashboardStatus"
          },
          "verificationResult": {
            "description": "Provides a detailed picture of the onboarding process for this merchant.",
            "type": "object",
            "required": [
              "status"
            ],
            "properties": {
              "status": {
                "$ref": "#/components/schemas/VerificationStatus"
              },
              "errorCodes": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/OnboardingErrorCode"
                }
              },
              "details": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            }
          },
          "bankAccountVerificationResult": {
            "$ref": "#/components/schemas/AccountVerificationResponseDto"
          },
          "payoutDetails": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "object",
            "required": [
              "payoutSettings",
              "payoutSchedule",
              "payoutDelayDays",
              "payoutExpediteNonBusinessDays",
              "automatedPayoutsEnabled",
              "automatedDisbursementsEnabled",
              "payoutStatus"
            ],
            "properties": {
              "payoutSettings": {
                "$ref": "#/components/schemas/PayoutSettings"
              },
              "payoutSchedule": {
                "description": "Frequency of payouts to the merchant. One of 'daily', 'weekly' or 'monthly'.",
                "type": "string"
              },
              "payoutDelayDays": {
                "description": "Number of business days between payment completion and settlement.",
                "type": "integer",
                "format": "int32"
              },
              "payoutExpediteNonBusinessDays": {
                "description": "If true, non business days are included in payouts for the previous business day. Otherwise include them in payouts for the next business day.",
                "type": "boolean"
              },
              "dayOfWeek": {
                "$ref": "#/components/schemas/DayOfWeek",
                "description": "For weekly and fortnightly payouts, the day of week the payout is created."
              },
              "dayOfMonth": {
                "description": "For monthly payouts, the day of the month the payout is created.",
                "type": "integer",
                "format": "int32"
              },
              "automatedPayoutsEnabled": {
                "description": "If true, any available balance is automatically paid out to the merchant according to the payout schedule. If false, payouts are manually initiated by the merchant.",
                "type": "boolean"
              },
              "automatedDisbursementsEnabled": {
                "description": "If true, payouts with be disbursed by the system. If false, payouts will not disbursed by the system, with the assumption they will be done manually.",
                "type": "boolean"
              },
              "payoutDefaultStatementDescriptor": {
                "description": "Default value to use for the statement descriptor on merchant payouts.",
                "type": "string"
              },
              "payoutStatus": {
                "$ref": "#/components/schemas/MerchantPayoutStatus",
                "description": "Whether payouts are enabled for this merchant."
              }
            }
          },
          "billingDetails": {
            "description": "**Restricted field** - only included if caller has access.",
            "type": "object",
            "required": [
              "billingNotificationsEnabled",
              "billingAddress"
            ],
            "properties": {
              "billingNotificationEmails": {
                "description": "List of email addresses that will receive an invoice whenever a billing invoice has been generated for a gross settlement merchant.",
                "type": "array",
                "items": {
                  "examples": [
                    "lucy.diamond@star.com"
                  ],
                  "type": "string"
                }
              },
              "billingNotificationsEnabled": {
                "description": "Toggle for whether to send invoice emails. Note even if `false`, late payment reminders will still be sent.",
                "type": "boolean"
              },
              "billingAddress": {
                "$ref": "#/components/schemas/BusinessAddress",
                "description": "Billing address for the merchant as it will appear on fee invoices for gross settlement merchants."
              },
              "billingPaymentSourceId": {
                "description": "The system identifier for the primary payment source used for paying for April fee related invoices.",
                "examples": [
                  "psrc_CE5VL9B5aRE8kF8D"
                ],
                "type": "string"
              }
            }
          },
          "bankAccounts": {
            "description": "List of bank accounts associated with this merchant. Payouts are paid into the primary bank account for each currency.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankAccountDetails"
            }
          },
          "branding": {
            "$ref": "#/components/schemas/MerchantBranding"
          },
          "orderNotificationSettings": {
            "$ref": "#/components/schemas/OrderNotificationSettings"
          },
          "orderCustomFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderCustomField"
            }
          },
          "payPlanSettings": {
            "$ref": "#/components/schemas/PayPlanSettings"
          },
          "publicToken": {
            "description": "Your public or publishable API Key is used for all outgoing communications from the frontend of your website and checkout page.",
            "type": "string"
          },
          "sourceRules": {
            "description": "The rules that configure payment sources for the merchant. Rules include surcharging, platform fee (FUTURE), etc.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Rule"
            }
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Marketplace specific additional data associated with this merchant."
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "StatementFrequency": {
        "title": "StatementFrequency",
        "description": "How often to issue a customer loan statement.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/Daily"
          },
          {
            "$ref": "#/components/schemas/Fortnightly"
          },
          {
            "$ref": "#/components/schemas/Monthly"
          },
          {
            "$ref": "#/components/schemas/Weekly"
          }
        ]
      },
      "Status": {
        "title": "Status",
        "type": "string",
        "enum": [
          "Enabled",
          "Disabled"
        ]
      },
      "Status1": {
        "title": "Status",
        "type": "string",
        "enum": [
          "enabled",
          "disabled"
        ]
      },
      "Status2": {
        "title": "Status",
        "description": "Status of the repayment of this loan statement.",
        "type": "string",
        "enum": [
          "draft",
          "outstanding",
          "due",
          "overdue",
          "paid",
          "cancelled"
        ]
      },
      "Strata": {
        "title": "Strata",
        "type": "object",
        "required": [
          "buildingIdentifier",
          "buildingAddress"
        ],
        "properties": {
          "buildingIdentifier": {
            "type": "string"
          },
          "buildingAddress": {
            "$ref": "#/components/schemas/ComponentisedAddress"
          }
        }
      },
      "SuperAdmin": {
        "title": "SuperAdmin",
        "type": "object",
        "required": [
          "SuperAdmin"
        ],
        "properties": {
          "SuperAdmin": {
            "$ref": "#/components/schemas/SuperAdmin1"
          }
        }
      },
      "SuperAdmin1": {
        "title": "SuperAdmin",
        "description": "A super admin has view access to all loans and admin access to all cards associated with the customer, along with the ability to manager roles of other delegates.",
        "type": "object"
      },
      "SupplierDetails": {
        "title": "SupplierDetails",
        "type": "object",
        "properties": {
          "name": {
            "description": "Business name of the supplier the transaction is associated with.",
            "type": "string"
          },
          "iataNumber": {
            "description": "IATA 8-Digit Numeric Code for the agency.",
            "type": "string"
          }
        }
      },
      "Surcharge": {
        "title": "Surcharge",
        "description": "Surcharge details, if applicable for this order.",
        "type": "object",
        "required": [
          "surchargeOptions"
        ],
        "properties": {
          "surchargeOptions": {
            "$ref": "#/components/schemas/Map_V",
            "description": "The surcharge amount applicable based on payment type **in minor currency units**."
          },
          "surchargePaidAmount": {
            "description": "The surcharge amount applied to this order **in minor currency units**. Can be `null` if the order has not yet been paid for.",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "SurchargeBy": {
        "title": "SurchargeBy",
        "type": "object",
        "required": [
          "fixedAmount",
          "variablePercentage"
        ],
        "properties": {
          "fixedAmount": {
            "description": "The fixed amount in minor currency units (e.g. cents for AUD) to be surcharged for every transaction.",
            "type": "integer",
            "format": "int64"
          },
          "variablePercentage": {
            "description": "The variable rate (as percentage) to be surcharged for every transaction, eg 2.5 for 2.5%.",
            "type": "number"
          }
        }
      },
      "SurchargeExplicitFee": {
        "title": "SurchargeExplicitFee",
        "type": "object",
        "required": [
          "fixed",
          "rate"
        ],
        "properties": {
          "fixed": {
            "type": "integer",
            "format": "int64"
          },
          "rate": {
            "type": "number"
          }
        }
      },
      "SurchargeFor": {
        "title": "SurchargeFor",
        "oneOf": [
          {
            "$ref": "#/components/schemas/SurchargeForCardBrands"
          }
        ]
      },
      "SurchargeForCardBrands": {
        "title": "SurchargeForCardBrands",
        "type": "object",
        "required": [
          "SurchargeForCardBrands"
        ],
        "properties": {
          "SurchargeForCardBrands": {
            "$ref": "#/components/schemas/SurchargeForCardBrands1"
          }
        }
      },
      "SurchargeForCardBrands1": {
        "title": "SurchargeForCardBrands",
        "type": "object",
        "required": [
          "cardBrand"
        ],
        "properties": {
          "cardBrand": {
            "type": "array",
            "minItems": 1,
            "items": {
              "$ref": "#/components/schemas/CardBrand"
            }
          }
        }
      },
      "SurchargePlatformFee": {
        "title": "SurchargePlatformFee",
        "type": "object"
      },
      "SurchargeQuote": {
        "title": "SurchargeQuote",
        "type": "object",
        "required": [
          "unsurchargedAmount",
          "surchargeAmount",
          "totalAmount",
          "paymentMethod",
          "summary",
          "quoteVerificationToken"
        ],
        "properties": {
          "unsurchargedAmount": {
            "description": "Describes the surcharging quote resulting from a backend calculation based on configured rates. The amount prior to surcharging, in minor currency units (e.g. cents for AUD).",
            "type": "integer",
            "format": "int64"
          },
          "surchargeAmount": {
            "description": "The amount of the surcharge, in minor currency units (e.g. cents for AUD).",
            "type": "integer",
            "format": "int64"
          },
          "totalAmount": {
            "description": "The total amount including the surcharge, in minor currency units (e.g. cents for AUD).",
            "type": "integer",
            "format": "int64"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/PaymentMethod"
          },
          "summary": {
            "description": "A free-form text description of the surcharge (eg '1% + $0.30 for Visa').",
            "type": "string"
          },
          "quoteVerificationToken": {
            "description": "Verification token for the surcharge quote.",
            "type": "string"
          }
        }
      },
      "SurchargeQuoted": {
        "title": "SurchargeQuoted",
        "type": "object",
        "required": [
          "surchargeQuote"
        ],
        "properties": {
          "surchargeQuote": {
            "$ref": "#/components/schemas/SurchargeQuote",
            "description": "The caller passes a quote that has previously been received by the surcharge calculation endpoint."
          }
        }
      },
      "SurchargeQuoted1": {
        "title": "SurchargeQuoted",
        "type": "object",
        "required": [
          "SurchargeQuoted"
        ],
        "properties": {
          "SurchargeQuoted": {
            "$ref": "#/components/schemas/SurchargeQuoted"
          }
        }
      },
      "SurchargeRequirement": {
        "title": "SurchargeRequirement",
        "description": "Specifies the options for surcharging, if required, defaults to no surcharge.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/SurchargeQuoted"
          },
          {
            "$ref": "#/components/schemas/SurchargeSpecified"
          }
        ]
      },
      "SurchargeRule": {
        "title": "SurchargeRule",
        "type": "object",
        "required": [
          "surchargeFor",
          "surchargeBy"
        ],
        "properties": {
          "surchargeFor": {
            "$ref": "#/components/schemas/SurchargeFor"
          },
          "surchargeBy": {
            "$ref": "#/components/schemas/SurchargeBy",
            "description": "The surcharging formula, where surcharge = rate * amount + fixed."
          }
        }
      },
      "SurchargeScaledPlatformFee": {
        "title": "SurchargeScaledPlatformFee",
        "type": "object",
        "required": [
          "multiplier"
        ],
        "properties": {
          "multiplier": {
            "type": "number"
          }
        }
      },
      "SurchargeSpecified": {
        "title": "SurchargeSpecified",
        "type": "object",
        "required": [
          "surchargeAmount"
        ],
        "properties": {
          "surchargeAmount": {
            "description": "The caller specifies the surcharge that will be applied; this option is only available to API-authenticated calls. The amount in minor currency units (e.g. cents for AUD). There are no bounds on the value - even negative values can be passed, although they will result in a *discount* to the end customer.",
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "SurchargeSpecified1": {
        "title": "SurchargeSpecified",
        "type": "object",
        "required": [
          "SurchargeSpecified"
        ],
        "properties": {
          "SurchargeSpecified": {
            "$ref": "#/components/schemas/SurchargeSpecified"
          }
        }
      },
      "TemplateDto": {
        "title": "TemplateDto",
        "type": "object",
        "required": [
          "name",
          "params"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "params": {
            "type": "string"
          }
        }
      },
      "ThreeDSAuthorisationRequired": {
        "title": "ThreeDSAuthorisationRequired",
        "type": "object",
        "required": [
          "ThreeDSAuthorisationRequired"
        ],
        "properties": {
          "ThreeDSAuthorisationRequired": {
            "$ref": "#/components/schemas/ThreeDSAuthorisationRequired1"
          }
        }
      },
      "ThreeDSAuthorisationRequired1": {
        "title": "ThreeDSAuthorisationRequired",
        "type": "object",
        "required": [
          "threeDSAuthorisationId",
          "redirectURL"
        ],
        "properties": {
          "threeDSAuthorisationId": {
            "description": "Uniquely represents this 3DS challenge. Once the customer completes the challenge, this value must be returned in a PayOrder call using the `Confirm3DSComplete` action.",
            "type": "string"
          },
          "redirectURL": {
            "description": "The URL provided here must be loaded for the customer. This URL will usually load an iFrame from the card issuer to complete the challenge on their own web services. The customer will be forwarded to the `returnURL` provided earlier upon completion of the challenge.",
            "type": "string"
          }
        }
      },
      "ThreeDSResult": {
        "title": "ThreeDSResult",
        "description": "The `ThreeDSAuthorisationRequired` value returned in the body of the response from the original `PayOrder` call that required 3DS.",
        "type": "object",
        "required": [
          "threeDSAuthorisationId"
        ],
        "properties": {
          "threeDSAuthorisationId": {
            "description": "Uniquely represents this 3DS challenge. The customer has now completed the challenge, so this value must be returned in a PayOrder call using the `Confirm3DSComplete` action.",
            "type": "string"
          }
        }
      },
      "TokenSavedPaymentSource": {
        "title": "TokenSavedPaymentSource",
        "oneOf": [
          {
            "$ref": "#/components/schemas/TokenSavedPaymentSourceCard"
          },
          {
            "$ref": "#/components/schemas/TokenSavedPaymentSourceDirectDebit"
          },
          {
            "$ref": "#/components/schemas/TokenSavedPaymentSourcePayTo"
          }
        ]
      },
      "TokenSavedPaymentSourceCard": {
        "title": "TokenSavedPaymentSourceCard",
        "type": "object",
        "required": [
          "TokenSavedPaymentSourceCard"
        ],
        "properties": {
          "TokenSavedPaymentSourceCard": {
            "$ref": "#/components/schemas/TokenSavedPaymentSourceCard1"
          }
        }
      },
      "TokenSavedPaymentSourceCard1": {
        "title": "TokenSavedPaymentSourceCard",
        "type": "object",
        "required": [
          "expiryDate",
          "last4",
          "brand",
          "bin",
          "funding",
          "country"
        ],
        "properties": {
          "expiryDate": {
            "$ref": "#/components/schemas/ExpiryDate",
            "description": "Card expiry month and year"
          },
          "last4": {
            "type": "string"
          },
          "brand": {
            "$ref": "#/components/schemas/CardBranding1"
          },
          "bin": {
            "type": "string"
          },
          "funding": {
            "$ref": "#/components/schemas/CardFunding2"
          },
          "country": {
            "$ref": "#/components/schemas/IsoCountry"
          }
        }
      },
      "TokenSavedPaymentSourceDirectDebit": {
        "title": "TokenSavedPaymentSourceDirectDebit",
        "type": "object",
        "required": [
          "TokenSavedPaymentSourceDirectDebit"
        ],
        "properties": {
          "TokenSavedPaymentSourceDirectDebit": {
            "$ref": "#/components/schemas/TokenSavedPaymentSourceDirectDebit1"
          }
        }
      },
      "TokenSavedPaymentSourceDirectDebit1": {
        "title": "TokenSavedPaymentSourceDirectDebit",
        "type": "object",
        "required": [
          "emailAddress",
          "agreementAcceptedDate",
          "bankAccount"
        ],
        "properties": {
          "emailAddress": {
            "type": "string"
          },
          "agreementAcceptedDate": {
            "type": "string",
            "format": "date-time"
          },
          "bankAccount": {
            "$ref": "#/components/schemas/BankAccount"
          }
        }
      },
      "TokenSavedPaymentSourcePayTo": {
        "title": "TokenSavedPaymentSourcePayTo",
        "type": "object",
        "required": [
          "TokenSavedPaymentSourcePayTo"
        ],
        "properties": {
          "TokenSavedPaymentSourcePayTo": {
            "$ref": "#/components/schemas/TokenSavedPaymentSourcePayTo1"
          }
        }
      },
      "TokenSavedPaymentSourcePayTo1": {
        "title": "TokenSavedPaymentSourcePayTo",
        "type": "object",
        "required": [
          "agreementUid",
          "accountIdentifierHint"
        ],
        "properties": {
          "agreementUid": {
            "type": "string"
          },
          "accountIdentifierHint": {
            "type": "string"
          }
        }
      },
      "TokenType": {
        "title": "TokenType",
        "description": "Type of the service token and the identifier of the entity it is associated with (e.g. merchant or marketplace).",
        "oneOf": [
          {
            "$ref": "#/components/schemas/MarketplaceApiKey"
          },
          {
            "$ref": "#/components/schemas/MerchantSecretToken"
          }
        ]
      },
      "TradingAccountProductSpec": {
        "title": "TradingAccountProductSpec",
        "type": "object",
        "required": [
          "TradingAccountProductSpec"
        ],
        "properties": {
          "TradingAccountProductSpec": {
            "$ref": "#/components/schemas/TradingAccountProductSpec1"
          }
        }
      },
      "TradingAccountProductSpec1": {
        "title": "TradingAccountProductSpec",
        "type": "object",
        "required": [
          "customerId",
          "customerFees",
          "metadataTemplate",
          "statementFrequency",
          "graceDays"
        ],
        "properties": {
          "customerId": {
            "description": "The organisational customer that is the owner of the trade account.",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "customerFees": {
            "$ref": "#/components/schemas/CustomerFees"
          },
          "metadataTemplate": {
            "$ref": "#/components/schemas/MetadataTemplate"
          },
          "supportedIssuerBrands": {
            "description": "The list of brands of cards to support issued on the back of this loan.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IssuerCardBrand"
            }
          },
          "statementFrequency": {
            "$ref": "#/components/schemas/StatementFrequency"
          },
          "graceDays": {
            "description": "Number of days between loan statement issue and due dates.",
            "type": "integer",
            "format": "int32"
          },
          "industryGroup": {
            "$ref": "#/components/schemas/IndustryGroup"
          }
        }
      },
      "TransactionPaymentMethod": {
        "title": "TransactionPaymentMethod",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CardPaymentMethod"
          },
          {
            "$ref": "#/components/schemas/DirectDebitPaymentMethod"
          },
          {
            "$ref": "#/components/schemas/PayToPaymentMethod"
          }
        ]
      },
      "TransactionResponse": {
        "title": "TransactionResponse",
        "type": "object",
        "required": [
          "purchaseDetails"
        ],
        "properties": {
          "purchaseDetails": {
            "$ref": "#/components/schemas/PurchaseDetails"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/TransactionPaymentMethod"
          },
          "serviceFees": {
            "$ref": "#/components/schemas/ServiceFees"
          },
          "customerDetails": {
            "$ref": "#/components/schemas/CustomerDetails"
          },
          "timelines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionTimeLine"
            }
          }
        }
      },
      "TransactionStatus": {
        "title": "TransactionStatus",
        "type": "string",
        "enum": [
          "accepted",
          "paid",
          "refunded",
          "partially_refunded",
          "pending",
          "failed",
          "cancelled",
          "disputed",
          "not_captured",
          "incomplete"
        ]
      },
      "TransactionTimeLine": {
        "title": "TransactionTimeLine",
        "type": "object",
        "required": [
          "eventType",
          "eventTime"
        ],
        "properties": {
          "eventType": {
            "$ref": "#/components/schemas/EventType"
          },
          "eventTime": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "type": "integer",
            "format": "int64"
          },
          "identifier": {
            "type": "string"
          }
        }
      },
      "TransactionTransfer": {
        "title": "TransactionTransfer",
        "type": "object",
        "required": [
          "TransactionTransfer"
        ],
        "properties": {
          "TransactionTransfer": {
            "$ref": "#/components/schemas/TransactionTransfer1"
          }
        }
      },
      "TransactionTransfer1": {
        "title": "TransactionTransfer",
        "type": "object"
      },
      "TransferFunds": {
        "title": "TransferFunds",
        "type": "object",
        "required": [
          "TransferFunds"
        ],
        "properties": {
          "TransferFunds": {
            "$ref": "#/components/schemas/TransferFunds1"
          }
        }
      },
      "TransferFunds1": {
        "title": "TransferFunds",
        "description": "Transfer funds associated with this transaction to another sub-merchant within the same marketplace.",
        "type": "object",
        "required": [
          "destinationMerchantId",
          "transferAmount",
          "surchargeFee"
        ],
        "properties": {
          "destinationMerchantId": {
            "description": "The merchant to transfer the funds to. Must be a sub-merchant within the same marketplace.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "transferAmount": {
            "description": "The amount **in minor currency units** that needs transferring. Must be less than or equal to the transaction amount minus any previous refunds or transfers.",
            "type": "integer",
            "format": "int64"
          },
          "surchargeFee": {
            "description": "If `true` the destination merchant will be surcharged the platform fee and the source merchant will be credited the fee.",
            "type": "boolean"
          },
          "levy": {
            "description": "Optionally set this with an amount **in minor currency units** you want to be deducted from the merchant after the transfer. If `surchargeFee` is `true`, the `levy` will be added to the total fees deducted from the destination merchant.",
            "type": "integer",
            "format": "int64"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "This can be used to associate any metadata to this transfer."
          }
        }
      },
      "TransportBillingInformation": {
        "title": "TransportBillingInformation",
        "description": "Metadata to be stored on the card",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CarRental"
          },
          {
            "$ref": "#/components/schemas/Flight"
          },
          {
            "$ref": "#/components/schemas/Hotel"
          },
          {
            "$ref": "#/components/schemas/Other1"
          },
          {
            "$ref": "#/components/schemas/Rail"
          }
        ]
      },
      "UnlinkCustomerToDelegate": {
        "title": "UnlinkCustomerToDelegate",
        "type": "object",
        "required": [
          "UnlinkCustomerToDelegate"
        ],
        "properties": {
          "UnlinkCustomerToDelegate": {
            "$ref": "#/components/schemas/UnlinkCustomerToDelegate1"
          }
        }
      },
      "UnlinkCustomerToDelegate1": {
        "title": "UnlinkCustomerToDelegate",
        "description": "Remove the link between this customer delegate and the given merchant customer. Payment sources saved against a delegate will no longer be available when signing in on behalf of the given customer.",
        "type": "object",
        "required": [
          "customerId"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for the customer",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          }
        }
      },
      "UnregisterApplePayDetails": {
        "title": "UnregisterApplePayDetails",
        "type": "object",
        "required": [
          "UnregisterApplePayDetails"
        ],
        "properties": {
          "UnregisterApplePayDetails": {
            "$ref": "#/components/schemas/UnregisterApplePayDetails1"
          }
        }
      },
      "UnregisterApplePayDetails1": {
        "title": "UnregisterApplePayDetails",
        "description": "Unregister one or more domains associated with a merchant previously registered for ApplePay.",
        "type": "object",
        "properties": {
          "domainNames": {
            "description": "The list of domains to unregister. Providing an empty list will unregister all domains and the merchant.",
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "UpdateBlockedCardRequest": {
        "title": "UpdateBlockedCardRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/RemoveBlockOnCard"
          }
        ]
      },
      "UpdateCustomerDelegateRequest": {
        "title": "UpdateCustomerDelegateRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/LinkCustomerToDelegate"
          },
          {
            "$ref": "#/components/schemas/UnlinkCustomerToDelegate"
          },
          {
            "$ref": "#/components/schemas/UpdateDelegateEmailAddress"
          },
          {
            "$ref": "#/components/schemas/UpdateDelegateLoanRole"
          },
          {
            "$ref": "#/components/schemas/UpdateDelegateName"
          },
          {
            "$ref": "#/components/schemas/UpdateDelegatePhoneNumber"
          },
          {
            "$ref": "#/components/schemas/UpdateDelegatePosition"
          }
        ]
      },
      "UpdateDelegateEmailAddress": {
        "title": "UpdateDelegateEmailAddress",
        "type": "object",
        "required": [
          "UpdateDelegateEmailAddress"
        ],
        "properties": {
          "UpdateDelegateEmailAddress": {
            "$ref": "#/components/schemas/UpdateDelegateEmailAddress1"
          }
        }
      },
      "UpdateDelegateEmailAddress1": {
        "title": "UpdateDelegateEmailAddress",
        "type": "object",
        "required": [
          "delegateEmailAddress"
        ],
        "properties": {
          "delegateEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          }
        }
      },
      "UpdateDelegateLoanRole": {
        "title": "UpdateDelegateLoanRole",
        "type": "object",
        "required": [
          "UpdateDelegateLoanRole"
        ],
        "properties": {
          "UpdateDelegateLoanRole": {
            "$ref": "#/components/schemas/UpdateDelegateLoanRole1"
          }
        }
      },
      "UpdateDelegateLoanRole1": {
        "title": "UpdateDelegateLoanRole",
        "description": "For delegates associated with loan-based products, update their permissions for loans under the given customer.",
        "type": "object",
        "required": [
          "customerId",
          "role"
        ],
        "properties": {
          "customerId": {
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "role": {
            "$ref": "#/components/schemas/LoanRole"
          }
        }
      },
      "UpdateDelegateName": {
        "title": "UpdateDelegateName",
        "type": "object",
        "required": [
          "UpdateDelegateName"
        ],
        "properties": {
          "UpdateDelegateName": {
            "$ref": "#/components/schemas/UpdateDelegateName1"
          }
        }
      },
      "UpdateDelegateName1": {
        "title": "UpdateDelegateName",
        "type": "object",
        "properties": {
          "delegateName": {
            "description": "Name of the customer delegate. Optional: when provided, updates the name associated with the delegate; when omitted or set to null, any existing name for the delegate will be cleared.",
            "type": "string"
          }
        }
      },
      "UpdateDelegatePhoneNumber": {
        "title": "UpdateDelegatePhoneNumber",
        "type": "object",
        "required": [
          "UpdateDelegatePhoneNumber"
        ],
        "properties": {
          "UpdateDelegatePhoneNumber": {
            "$ref": "#/components/schemas/UpdateDelegatePhoneNumber1"
          }
        }
      },
      "UpdateDelegatePhoneNumber1": {
        "title": "UpdateDelegatePhoneNumber",
        "type": "object",
        "properties": {
          "delegatePhoneNumber": {
            "description": "Phone number of the customer delegate. Optional: when provided, updates the phone number associated with the delegate; when omitted or set to null, any existing phone number for the delegate will be cleared.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          }
        }
      },
      "UpdateDelegatePosition": {
        "title": "UpdateDelegatePosition",
        "type": "object",
        "required": [
          "UpdateDelegatePosition"
        ],
        "properties": {
          "UpdateDelegatePosition": {
            "$ref": "#/components/schemas/UpdateDelegatePosition1"
          }
        }
      },
      "UpdateDelegatePosition1": {
        "title": "UpdateDelegatePosition",
        "type": "object",
        "required": [
          "customerId"
        ],
        "properties": {
          "customerId": {
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "delegatePosition": {
            "type": "string"
          }
        }
      },
      "UpdateDigitalCardRequestMastercard": {
        "title": "UpdateDigitalCardRequestMastercard",
        "type": "object",
        "required": [
          "UpdateDigitalCardRequestMastercard"
        ],
        "properties": {
          "UpdateDigitalCardRequestMastercard": {
            "$ref": "#/components/schemas/UpdateDigitalCardRequestMastercard1"
          }
        }
      },
      "UpdateDigitalCardRequestMastercard1": {
        "title": "UpdateDigitalCardRequestMastercard",
        "type": "object",
        "required": [
          "digitalCreditCardId",
          "details"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/CardUpdateDetailsDto"
          }
        }
      },
      "UpdateDigitalCardRequestMastercardWithDbi": {
        "title": "UpdateDigitalCardRequestMastercardWithDbi",
        "type": "object",
        "required": [
          "UpdateDigitalCardRequestMastercardWithDbi"
        ],
        "properties": {
          "UpdateDigitalCardRequestMastercardWithDbi": {
            "$ref": "#/components/schemas/UpdateDigitalCardRequestMastercardWithDbi1"
          }
        }
      },
      "UpdateDigitalCardRequestMastercardWithDbi1": {
        "title": "UpdateDigitalCardRequestMastercardWithDbi",
        "type": "object",
        "required": [
          "digitalCreditCardId",
          "details"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "details": {
            "$ref": "#/components/schemas/CardUpdateDetailsDbiDto"
          }
        }
      },
      "UpdateDigitalCardResponseMastercard": {
        "title": "UpdateDigitalCardResponseMastercard",
        "type": "object",
        "required": [
          "UpdateDigitalCardResponseMastercard"
        ],
        "properties": {
          "UpdateDigitalCardResponseMastercard": {
            "$ref": "#/components/schemas/UpdateDigitalCardResponseMastercard1"
          }
        }
      },
      "UpdateDigitalCardResponseMastercard1": {
        "title": "UpdateDigitalCardResponseMastercard",
        "type": "object",
        "required": [
          "details"
        ],
        "properties": {
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "UpdateDigitalCardStatusRequest": {
        "title": "UpdateDigitalCardStatusRequest",
        "type": "object",
        "required": [
          "UpdateDigitalCardStatusRequest"
        ],
        "properties": {
          "UpdateDigitalCardStatusRequest": {
            "$ref": "#/components/schemas/UpdateDigitalCardStatusRequest1"
          }
        }
      },
      "UpdateDigitalCardStatusRequest1": {
        "title": "UpdateDigitalCardStatusRequest",
        "type": "object",
        "required": [
          "digitalCreditCardId",
          "status"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/DigitalCardStatus"
          }
        }
      },
      "UpdateDigitalCardStatusResponse": {
        "title": "UpdateDigitalCardStatusResponse",
        "type": "object",
        "required": [
          "UpdateDigitalCardStatusResponse"
        ],
        "properties": {
          "UpdateDigitalCardStatusResponse": {
            "$ref": "#/components/schemas/UpdateDigitalCardStatusResponse1"
          }
        }
      },
      "UpdateDigitalCardStatusResponse1": {
        "title": "UpdateDigitalCardStatusResponse",
        "type": "object",
        "required": [
          "details"
        ],
        "properties": {
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "UpdateDigitalCardTransactionLimitRequest": {
        "title": "UpdateDigitalCardTransactionLimitRequest",
        "type": "object",
        "required": [
          "UpdateDigitalCardTransactionLimitRequest"
        ],
        "properties": {
          "UpdateDigitalCardTransactionLimitRequest": {
            "$ref": "#/components/schemas/UpdateDigitalCardTransactionLimitRequest1"
          }
        }
      },
      "UpdateDigitalCardTransactionLimitRequest1": {
        "title": "UpdateDigitalCardTransactionLimitRequest",
        "type": "object",
        "required": [
          "digitalCreditCardId"
        ],
        "properties": {
          "digitalCreditCardId": {
            "examples": [
              "dcard_pOfH6JVVcCBduZ2x"
            ],
            "type": "string"
          },
          "limit": {
            "$ref": "#/components/schemas/IsoCurrencyAmount",
            "description": "The transaction limit for the card - the largest amount chargeable on a single transaction."
          }
        }
      },
      "UpdateDigitalCardTransactionLimitResponse": {
        "title": "UpdateDigitalCardTransactionLimitResponse",
        "type": "object",
        "required": [
          "UpdateDigitalCardTransactionLimitResponse"
        ],
        "properties": {
          "UpdateDigitalCardTransactionLimitResponse": {
            "$ref": "#/components/schemas/UpdateDigitalCardTransactionLimitResponse1"
          }
        }
      },
      "UpdateDigitalCardTransactionLimitResponse1": {
        "title": "UpdateDigitalCardTransactionLimitResponse",
        "type": "object",
        "required": [
          "details"
        ],
        "properties": {
          "details": {
            "$ref": "#/components/schemas/RedactedCardCreationDetailsDto"
          }
        }
      },
      "UpdateMerchantBillingSettings": {
        "title": "UpdateMerchantBillingSettings",
        "type": "object",
        "required": [
          "UpdateMerchantBillingSettings"
        ],
        "properties": {
          "UpdateMerchantBillingSettings": {
            "$ref": "#/components/schemas/UpdateMerchantBillingSettings1"
          }
        }
      },
      "UpdateMerchantBillingSettings1": {
        "title": "UpdateMerchantBillingSettings",
        "description": "Update list of email addresses that receive gross settlement invoice reports and billing address to use for fee invoices.",
        "type": "object",
        "required": [
          "billingAddress"
        ],
        "properties": {
          "billingNotificationEmails": {
            "description": "List of email addresses that will receive an invoice whenever a billing invoice has been generated for a gross settlement merchant.",
            "type": "array",
            "items": {
              "examples": [
                "lucy.diamond@star.com"
              ],
              "type": "string"
            }
          },
          "billingNotificationsEnabled": {
            "description": "Toggle for whether to send invoice emails. Defaults to true. Note even if `false`, late payment reminders will still be sent.",
            "type": "boolean"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/LimeAddress"
          }
        }
      },
      "UpdateMerchantBranding": {
        "title": "UpdateMerchantBranding",
        "type": "object",
        "required": [
          "UpdateMerchantBranding"
        ],
        "properties": {
          "UpdateMerchantBranding": {
            "$ref": "#/components/schemas/UpdateMerchantBranding1"
          }
        }
      },
      "UpdateMerchantBranding1": {
        "title": "UpdateMerchantBranding",
        "description": "Update the branding for a merchant. Branding is used in communications and dashboards associated with this merchant.",
        "type": "object",
        "required": [
          "branding"
        ],
        "properties": {
          "branding": {
            "$ref": "#/components/schemas/MerchantBranding"
          }
        }
      },
      "UpdateMerchantBusinessProfile": {
        "title": "UpdateMerchantBusinessProfile",
        "type": "object",
        "required": [
          "UpdateMerchantBusinessProfile"
        ],
        "properties": {
          "UpdateMerchantBusinessProfile": {
            "$ref": "#/components/schemas/UpdateMerchantBusinessProfile1"
          }
        }
      },
      "UpdateMerchantBusinessProfile1": {
        "title": "UpdateMerchantBusinessProfile",
        "description": "Update business profile for the given merchant.",
        "type": "object",
        "required": [
          "timeZone",
          "businessName",
          "businessType",
          "website",
          "supportSite",
          "industry",
          "taxId",
          "contactPerson",
          "contactEmailAddress",
          "phoneNumber",
          "address",
          "brandName",
          "cardStatementName",
          "smsSenderName"
        ],
        "properties": {
          "timeZone": {
            "description": "Timezone for the merchant, e.g. Australia/Sydney",
            "examples": [
              "Australia/Sydney"
            ],
            "type": "string"
          },
          "businessName": {
            "description": "Business name (as linked to official business registration ids such as ABN/ACN or NZBN)",
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "businessType": {
            "$ref": "#/components/schemas/BusinessType",
            "description": "Business type of merchant. Note business type cannot change once a merchant is active."
          },
          "companyType": {
            "$ref": "#/components/schemas/CompanyType",
            "description": "(Optional) Company type, required when businessType is company"
          },
          "website": {
            "description": "Company website",
            "type": "string"
          },
          "supportSite": {
            "description": "Company website for handling support issues",
            "type": "string"
          },
          "industry": {
            "$ref": "#/components/schemas/Industry"
          },
          "tradingCountry": {
            "$ref": "#/components/schemas/Country",
            "description": "Optional ISO-3166 two-letter country code for where the merchant is accepting payments. Only required if different from tax country."
          },
          "taxId": {
            "description": "The registered tax id of the company, e.g. ABN, NZBN",
            "type": "string"
          },
          "contactPerson": {
            "$ref": "#/components/schemas/BusinessContactPerson"
          },
          "contactEmailAddress": {
            "description": "Email address associated with the merchant",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "supportEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number associated with the merchant in E164 format, eg. +61400000000",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/BusinessAddress"
          },
          "brandName": {
            "description": "The customer facing name of your business.",
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "cardStatementName": {
            "description": "The label that will appear on your customer's credit or debit card statements. Should contain letters, numbers or spaces only.",
            "examples": [
              "Kates Deli"
            ],
            "type": "string",
            "maxLength": 13,
            "minLength": 5
          },
          "smsSenderName": {
            "description": "Sms Sender Name. Should contain letters or digits only.",
            "examples": [
              "KatesDeli"
            ],
            "type": "string",
            "maxLength": 11,
            "minLength": 3
          },
          "verificationDocs": {
            "$ref": "#/components/schemas/BusinessVerificationDoc"
          }
        }
      },
      "UpdateMerchantMetadata": {
        "title": "UpdateMerchantMetadata",
        "type": "object",
        "required": [
          "UpdateMerchantMetadata"
        ],
        "properties": {
          "UpdateMerchantMetadata": {
            "$ref": "#/components/schemas/UpdateMerchantMetadata1"
          }
        }
      },
      "UpdateMerchantMetadata1": {
        "title": "UpdateMerchantMetadata",
        "description": "Update metadata associated with the given merchant.",
        "type": "object",
        "required": [
          "metadata"
        ],
        "properties": {
          "metadata": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "UpdateMerchantPayoutDetails": {
        "title": "UpdateMerchantPayoutDetails",
        "type": "object",
        "required": [
          "UpdateMerchantPayoutDetails"
        ],
        "properties": {
          "UpdateMerchantPayoutDetails": {
            "$ref": "#/components/schemas/UpdateMerchantPayoutDetails1"
          }
        }
      },
      "UpdateMerchantPayoutDetails1": {
        "title": "UpdateMerchantPayoutDetails",
        "description": "Update frequency of payouts, and list of email addresses that receive payout reports.",
        "type": "object",
        "required": [
          "payoutSettings",
          "payoutSchedule"
        ],
        "properties": {
          "payoutSettings": {
            "$ref": "#/components/schemas/PayoutSettings"
          },
          "payoutSchedule": {
            "$ref": "#/components/schemas/PayoutSchedule"
          },
          "dayOfWeek": {
            "$ref": "#/components/schemas/DayOfWeek",
            "description": "For weekly and fortnightly payouts, optionally specify the day of week to pay. Default is Monday."
          },
          "dayOfMonth": {
            "description": "For monthly payouts, optionally specify the day of the month to pay. Default is 1.",
            "type": "integer",
            "format": "int32"
          },
          "payoutDefaultStatementDescriptor": {
            "description": "Default value to use for the statement descriptor on merchant payouts.",
            "type": "string"
          }
        }
      },
      "UpdateMerchantPublicInfo": {
        "title": "UpdateMerchantPublicInfo",
        "type": "object",
        "required": [
          "UpdateMerchantPublicInfo"
        ],
        "properties": {
          "UpdateMerchantPublicInfo": {
            "$ref": "#/components/schemas/UpdateMerchantPublicInfo1"
          }
        }
      },
      "UpdateMerchantPublicInfo1": {
        "title": "UpdateMerchantPublicInfo",
        "description": "Update public information for the given merchant. Every field is optional. In each case, the underlying value is updated if provided.",
        "type": "object",
        "properties": {
          "businessName": {
            "description": "Business name (as linked to official business registration ids such as ABN/ACN or NZBN)",
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "website": {
            "description": "Company website",
            "type": "string"
          },
          "supportSite": {
            "description": "Company website for handling support issues",
            "type": "string"
          },
          "contactPerson": {
            "$ref": "#/components/schemas/BusinessContactPerson"
          },
          "contactEmailAddress": {
            "description": "Email address associated with the merchant",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "supportEmailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number associated with the merchant in E164 format, eg. +61400000000",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/BusinessAddress1"
          },
          "brandName": {
            "description": "The customer facing name of your business.",
            "type": "string",
            "maxLength": 100,
            "minLength": 3
          },
          "cardStatementName": {
            "description": "The label that will appear on your customer's credit or debit card statements. Should contain letters, numbers or spaces only.",
            "examples": [
              "Kates Deli"
            ],
            "type": "string",
            "maxLength": 13,
            "minLength": 5
          },
          "smsSenderName": {
            "description": "Sms Sender Name. Should contain letters or digits only.",
            "examples": [
              "KatesDeli"
            ],
            "type": "string",
            "maxLength": 11,
            "minLength": 3
          }
        }
      },
      "UpdateMerchantRequest": {
        "title": "UpdateMerchantRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/AddMerchantBankAccount"
          },
          {
            "$ref": "#/components/schemas/DeleteMerchantBankAccount"
          },
          {
            "$ref": "#/components/schemas/RegisterApplePayDetails"
          },
          {
            "$ref": "#/components/schemas/RemoveSurchargeConfig"
          },
          {
            "$ref": "#/components/schemas/SetMerchantBillingPaymentSource"
          },
          {
            "$ref": "#/components/schemas/SetMerchantPrimaryBankAccount"
          },
          {
            "$ref": "#/components/schemas/SetSurchargeConfig"
          },
          {
            "$ref": "#/components/schemas/UnregisterApplePayDetails"
          },
          {
            "$ref": "#/components/schemas/UpdateMerchantBillingSettings"
          },
          {
            "$ref": "#/components/schemas/UpdateMerchantBranding"
          },
          {
            "$ref": "#/components/schemas/UpdateMerchantBusinessProfile"
          },
          {
            "$ref": "#/components/schemas/UpdateMerchantMetadata"
          },
          {
            "$ref": "#/components/schemas/UpdateMerchantPayoutDetails"
          },
          {
            "$ref": "#/components/schemas/UpdateMerchantPublicInfo"
          },
          {
            "$ref": "#/components/schemas/UpdateOrderCustomFields"
          }
        ]
      },
      "UpdateOrderCustomFields": {
        "title": "UpdateOrderCustomFields",
        "type": "object",
        "required": [
          "UpdateOrderCustomFields"
        ],
        "properties": {
          "UpdateOrderCustomFields": {
            "$ref": "#/components/schemas/UpdateOrderCustomFields1"
          }
        }
      },
      "UpdateOrderCustomFields1": {
        "title": "UpdateOrderCustomFields",
        "description": "\nUpdate the custom fields for a merchant. There can be used to add additional context to orders that can be included\nin pay by link orders, communications and reports.\n\nMerchants generating pay by link orders via the merchant dashboard will be able to enter custom field values.\nFields marked as required must be provided at this point.\n\nIf custom fields are present in order metadata, they will be included in order paid emails sent to merchants and to customers (only fields with `visibleForCustomer` set to true)\nand in settlement report entries.\n",
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderCustomField"
            }
          }
        }
      },
      "UpdateOrderRequest": {
        "title": "UpdateOrderRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpdateReferenceOrderId"
          },
          {
            "$ref": "#/components/schemas/UpdateSettlementConfiguration"
          }
        ]
      },
      "UpdateReferenceOrderId": {
        "title": "UpdateReferenceOrderId",
        "type": "object",
        "required": [
          "UpdateReferenceOrderId"
        ],
        "properties": {
          "UpdateReferenceOrderId": {
            "$ref": "#/components/schemas/UpdateReferenceOrderId1"
          }
        }
      },
      "UpdateReferenceOrderId1": {
        "title": "UpdateReferenceOrderId",
        "description": "Update the reference used by the merchant to identify this order.",
        "type": "object",
        "required": [
          "referenceOrderId"
        ],
        "properties": {
          "referenceOrderId": {
            "type": "string"
          }
        }
      },
      "UpdateServiceTokenDescription": {
        "title": "UpdateServiceTokenDescription",
        "type": "object",
        "required": [
          "UpdateServiceTokenDescription"
        ],
        "properties": {
          "UpdateServiceTokenDescription": {
            "$ref": "#/components/schemas/UpdateServiceTokenDescription1"
          }
        }
      },
      "UpdateServiceTokenDescription1": {
        "title": "UpdateServiceTokenDescription",
        "type": "object",
        "required": [
          "description"
        ],
        "properties": {
          "description": {
            "description": "New description for the token",
            "type": "string"
          }
        }
      },
      "UpdateServiceTokenExpiration": {
        "title": "UpdateServiceTokenExpiration",
        "type": "object",
        "required": [
          "UpdateServiceTokenExpiration"
        ],
        "properties": {
          "UpdateServiceTokenExpiration": {
            "$ref": "#/components/schemas/UpdateServiceTokenExpiration1"
          }
        }
      },
      "UpdateServiceTokenExpiration1": {
        "title": "UpdateServiceTokenExpiration",
        "type": "object",
        "properties": {
          "expiresAt": {
            "description": "New expiration time for the token. If not provided, token will not expire.",
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "UpdateServiceTokenRequest": {
        "title": "UpdateServiceTokenRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpdateServiceTokenDescription"
          },
          {
            "$ref": "#/components/schemas/UpdateServiceTokenExpiration"
          },
          {
            "$ref": "#/components/schemas/UpdateServiceTokenStatus"
          }
        ]
      },
      "UpdateServiceTokenStatus": {
        "title": "UpdateServiceTokenStatus",
        "type": "object",
        "required": [
          "UpdateServiceTokenStatus"
        ],
        "properties": {
          "UpdateServiceTokenStatus": {
            "$ref": "#/components/schemas/UpdateServiceTokenStatus1"
          }
        }
      },
      "UpdateServiceTokenStatus1": {
        "title": "UpdateServiceTokenStatus",
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Status"
          }
        }
      },
      "UpdateSettlementConfiguration": {
        "title": "UpdateSettlementConfiguration",
        "type": "object",
        "required": [
          "UpdateSettlementConfiguration"
        ],
        "properties": {
          "UpdateSettlementConfiguration": {
            "$ref": "#/components/schemas/UpdateSettlementConfiguration1"
          }
        }
      },
      "UpdateSettlementConfiguration1": {
        "title": "UpdateSettlementConfiguration",
        "description": "For merchants with multiple settlement configurations, update the desired configuration for this order. Configuration set on an order will override the settlement setting configured on the loan.",
        "type": "object",
        "required": [
          "settlementConfiguration"
        ],
        "properties": {
          "settlementConfiguration": {
            "$ref": "#/components/schemas/SettlementConfiguration"
          }
        }
      },
      "UpdateTransactionRequest": {
        "title": "UpdateTransactionRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CancelAuthorisation"
          },
          {
            "$ref": "#/components/schemas/CaptureFunds"
          },
          {
            "$ref": "#/components/schemas/CreateRefund"
          },
          {
            "$ref": "#/components/schemas/ReverseFundsTransfer"
          },
          {
            "$ref": "#/components/schemas/TransferFunds"
          }
        ]
      },
      "UpdateWebhookSubscriptionRequest": {
        "title": "UpdateWebhookSubscriptionRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpdateWebhookSubscriptionStatus"
          }
        ]
      },
      "UpdateWebhookSubscriptionStatus": {
        "title": "UpdateWebhookSubscriptionStatus",
        "type": "object",
        "required": [
          "UpdateWebhookSubscriptionStatus"
        ],
        "properties": {
          "UpdateWebhookSubscriptionStatus": {
            "$ref": "#/components/schemas/UpdateWebhookSubscriptionStatus1"
          }
        }
      },
      "UpdateWebhookSubscriptionStatus1": {
        "title": "UpdateWebhookSubscriptionStatus",
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "$ref": "#/components/schemas/WebhookSubscriptionState"
          }
        }
      },
      "UpsertConsumerCustomer": {
        "title": "UpsertConsumerCustomer",
        "type": "object",
        "required": [
          "UpsertConsumerCustomer"
        ],
        "properties": {
          "UpsertConsumerCustomer": {
            "$ref": "#/components/schemas/UpsertConsumerCustomer1"
          }
        }
      },
      "UpsertConsumerCustomer1": {
        "title": "UpsertConsumerCustomer",
        "description": "**Consumer customers** are individuals typically making purchases from the merchant via e-commerce websites.\n They are uniquely identified by `emailAddress` for a given merchant.\n",
        "type": "object",
        "required": [
          "emailAddress",
          "familyName",
          "isVerified"
        ],
        "properties": {
          "emailAddress": {
            "description": "Email address of the customer.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number of the customer. Note, this must be in E164 format.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. Must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "givenName": {
            "type": "string"
          },
          "middleName": {
            "type": "string"
          },
          "familyName": {
            "type": "string"
          },
          "isVerified": {
            "description": "Has the phone number and email address for this customer been verified to be correct.",
            "type": "boolean"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Additional use case data specific to individual marketplaces or target industries and applications. Format must be agreed in advance with April."
          }
        }
      },
      "UpsertConsumerMarketplaceCustomer": {
        "title": "UpsertConsumerMarketplaceCustomer",
        "type": "object",
        "required": [
          "UpsertConsumerMarketplaceCustomer"
        ],
        "properties": {
          "UpsertConsumerMarketplaceCustomer": {
            "$ref": "#/components/schemas/UpsertConsumerMarketplaceCustomer1"
          }
        }
      },
      "UpsertConsumerMarketplaceCustomer1": {
        "title": "UpsertConsumerMarketplaceCustomer",
        "description": "**Consumer marketplace customers** represent individuals who will be making purchases from one or more sub-merchants\nof the marketplace. They are uniquely identified by `emailAddress` for a given marketplace.\n\n\n\n**Alpha release** - Consider this endpoint experimental and very likely to change in future.\n",
        "type": "object",
        "required": [
          "givenName",
          "familyName",
          "emailAddress",
          "isVerified"
        ],
        "properties": {
          "givenName": {
            "type": "string"
          },
          "middleName": {
            "type": "string"
          },
          "familyName": {
            "type": "string"
          },
          "emailAddress": {
            "description": "Email address of the customer",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "isVerified": {
            "description": "Has the phone number and email address for this customer been verified to be correct.",
            "type": "boolean"
          },
          "phoneNumber": {
            "description": "Phone number of the customer",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. Must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "UpsertCustomerDelegateRequest": {
        "title": "UpsertCustomerDelegateRequest",
        "type": "object",
        "required": [
          "customerId",
          "delegateEmailAddress"
        ],
        "properties": {
          "customerId": {
            "description": "System unique identifier for the customer",
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "delegateEmailAddress": {
            "description": "Email address of the customer delegate.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "delegatePhoneNumber": {
            "description": "Phone number of the customer delegate. Optional: when provided, updates the phone number associated with the delegate; when omitted or set to null, any existing phone number for the delegate will be cleared.",
            "examples": [
              "+61401234567"
            ],
            "type": "string"
          },
          "delegateName": {
            "description": "Name of the customer delegate. Optional: when provided, updates the name associated with the delegate; when omitted or set to null, any existing name for the delegate will be cleared.",
            "type": "string"
          },
          "delegatePosition": {
            "description": "Position of the customer delegate within the business. Optional: when provided, updates the position associated with the delegate; when omitted or set to null, any existing position for the delegate will be cleared.",
            "type": "string"
          }
        }
      },
      "UpsertCustomerResponse": {
        "title": "UpsertCustomerResponse",
        "type": "object",
        "required": [
          "customerId",
          "merchantId"
        ],
        "properties": {
          "customerId": {
            "examples": [
              "cust_gNJmCcUiYmiYHkpt"
            ],
            "type": "string"
          },
          "merchantId": {
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          }
        }
      },
      "UpsertMarketplaceCustomerProxy": {
        "title": "UpsertMarketplaceCustomerProxy",
        "type": "object",
        "required": [
          "UpsertMarketplaceCustomerProxy"
        ],
        "properties": {
          "UpsertMarketplaceCustomerProxy": {
            "$ref": "#/components/schemas/UpsertMarketplaceCustomerProxy1"
          }
        }
      },
      "UpsertMarketplaceCustomerProxy1": {
        "title": "UpsertMarketplaceCustomerProxy",
        "description": "**Marketplace customers** allow marketplaces to onboard both B2B and B2C customers\nonce for the whole marketplace. For payments, we require a customer at the merchant\nlevel. A `MarketplaceCustomerProxy` allows you to generate a merchant level customer\nidentifier that links to a pre-existing marketplace customer. This identifier\ncan then be used like any other customer identifier to complete the payment flow.\n",
        "type": "object",
        "required": [
          "marketplaceCustomerId"
        ],
        "properties": {
          "marketplaceCustomerId": {
            "examples": [
              "mktpcust_-fUW30ALFe23XYoW"
            ],
            "type": "string"
          }
        }
      },
      "UpsertMarketplaceCustomerRequest": {
        "title": "UpsertMarketplaceCustomerRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpsertConsumerMarketplaceCustomer"
          },
          {
            "$ref": "#/components/schemas/UpsertOrganisationMarketplaceCustomer"
          }
        ]
      },
      "UpsertMerchantCustomerRequest": {
        "title": "UpsertMerchantCustomerRequest",
        "oneOf": [
          {
            "$ref": "#/components/schemas/UpsertConsumerCustomer"
          },
          {
            "$ref": "#/components/schemas/UpsertMarketplaceCustomerProxy"
          },
          {
            "$ref": "#/components/schemas/UpsertOrganisationCustomer"
          }
        ]
      },
      "UpsertOrganisationCustomer": {
        "title": "UpsertOrganisationCustomer",
        "type": "object",
        "required": [
          "UpsertOrganisationCustomer"
        ],
        "properties": {
          "UpsertOrganisationCustomer": {
            "$ref": "#/components/schemas/UpsertOrganisationCustomer1"
          }
        }
      },
      "UpsertOrganisationCustomer1": {
        "title": "UpsertOrganisationCustomer",
        "description": "**Organisation customers** represent businesses wishing to make purchases from the merchant.\n They are uniquely identified by `referenceCustomerId` for a given merchant.\n",
        "type": "object",
        "required": [
          "emailAddress",
          "referenceCustomerId",
          "organisationName",
          "taxId",
          "organisationKyced",
          "organisationCreditChecked"
        ],
        "properties": {
          "emailAddress": {
            "description": "Email address of the organisation.",
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "description": "A reference provided by the merchant to identify this customer. Must be unique for the given merchant.",
            "examples": [
              "CUST-48822821"
            ],
            "type": "string"
          },
          "organisationName": {
            "type": "string"
          },
          "taxId": {
            "description": "The tax id (e.g. ABN or NZBN) for the organisation.",
            "type": "string"
          },
          "organisationKyced": {
            "description": "Has the organisation undergone Know Your Customer (KYC) verification.",
            "type": "boolean"
          },
          "organisationCreditChecked": {
            "description": "Has the organisation successfully completed a credit check.",
            "type": "boolean"
          }
        }
      },
      "UpsertOrganisationMarketplaceCustomer": {
        "title": "UpsertOrganisationMarketplaceCustomer",
        "type": "object",
        "required": [
          "UpsertOrganisationMarketplaceCustomer"
        ],
        "properties": {
          "UpsertOrganisationMarketplaceCustomer": {
            "$ref": "#/components/schemas/UpsertOrganisationMarketplaceCustomer1"
          }
        }
      },
      "UpsertOrganisationMarketplaceCustomer1": {
        "title": "UpsertOrganisationMarketplaceCustomer",
        "description": "**Organisation marketplace customers** who will be making purchases from one or more sub-mechants\nof the marketplace. They are uniquely identified by `referenceCustomerId` for a given marketplace.\n",
        "type": "object",
        "required": [
          "emailAddress",
          "referenceCustomerId",
          "organisationName",
          "taxId",
          "organisationKyced",
          "organisationCreditChecked"
        ],
        "properties": {
          "emailAddress": {
            "examples": [
              "lucy.diamond@star.com"
            ],
            "type": "string"
          },
          "referenceCustomerId": {
            "type": "string"
          },
          "organisationName": {
            "type": "string"
          },
          "taxId": {
            "type": "string"
          },
          "organisationKyced": {
            "type": "boolean"
          },
          "organisationCreditChecked": {
            "type": "boolean"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject"
          }
        }
      },
      "VerificationDocs": {
        "title": "VerificationDocs",
        "type": "object",
        "required": [
          "idType",
          "docFrontFileId"
        ],
        "properties": {
          "idType": {
            "$ref": "#/components/schemas/IdType"
          },
          "docFrontFileId": {
            "description": "System unique identifier for the file for the front of the document",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          },
          "docBackFileId": {
            "description": "(Optional) System unique identifier for the file for the back of the document. This is not required if `idType` is `Passport`",
            "examples": [
              "lfile_gMUxRceDqqOUtLtI"
            ],
            "type": "string"
          }
        }
      },
      "VerificationProvider": {
        "title": "VerificationProvider",
        "type": "string",
        "enum": [
          "Zepto"
        ]
      },
      "VerificationResult": {
        "title": "VerificationResult",
        "type": "object",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "$ref": "#/components/schemas/VerificationStatus"
          },
          "errorCodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OnboardingErrorCode"
            }
          },
          "details": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "VerificationStatus": {
        "title": "VerificationStatus",
        "type": "string",
        "enum": [
          "Pending",
          "Verified"
        ]
      },
      "Version": {
        "title": "Version",
        "type": "string",
        "enum": [
          "EC_v1",
          "RSA_v1"
        ]
      },
      "WebhookEventType": {
        "title": "WebhookEventType",
        "description": "\nThese are the types of events available for subscription at the merchant or marketplace level.\n\n  * **MerchantCreated**      - A sub-merchant of a marketplace has been created and has started the onboarding process.\n  * **MerchantActivated**    - A sub-merchant of a marketplace has been fully onboarded and is activated for accepting payments.\n  * **MerchantSuspended**    - A sub-merchant of a marketplace has been suspended, disabling creation of new payments.\n  * **MerchantAvailableBalanceUpdated**    - The available balance for a merchant has been updated.\n  * **MerchantBankAccountAdded**    - A new bank account has been added to a merchant account.\n  * **MerchantPrimaryBankAccountUpdated**    - The bank account used for all automated payouts and the default for manual payouts has been updated.\n  * **PayPlanCreated**       - The pay plan object has been created, but has not been successfully associated with an order yet.\n  * **PayPlanActivated**     - The pay plan has successfully been established, the initial payment, if any, has been received and one or more future instalments are yet to be paid.\n  * **PayPlanCompleted**     - The payment plan has been completely paid, including any fees/penalties.\n  * **PayPlanInDefault**     - The plan is overdue and has not been paid after several soft collection attempts.\n  * **PayInFullCreated**     - A payment token representing a full payment has been created. No money transfer has occurred at this point.\n  * **PayInFullAccepted**    - A pay in full payment has been accepted by the customer but the payment method is asynchronous (e.g. direct debit or bank transfer).\n  * **PayInFullAuthorised**  - A card based pay in full payment has authorised a payment (reserving the funds), but it has not been captured yet.\n  * **PayInFullCompleted**   - A pay in full payment has been successfully paid.\n  * **TransactionPaid**      - An order has been completed from the merchants perspective. For pay in full payments, the payment has been successfully completed. For pay plans, the plan has been successfully activated.\n  * **TransactionFailed**    - An attempt to pay for an order has failed.\n  * **DisputeCreated**       - A customer has raised a dispute for a payment with their financial provider.\n  * **DisputeUpdated**       - An update has been received on an existing dispute.\n  * **PayoutCreated**        - Payout details have been confirmed.\n  * **PayoutPending**        - Payout is being prepared for disbursement.\n  * **PayoutFailed**         - We were unable to make a payout to a merchant's primary bank account.\n  * **PayoutPaid**           - A payout was successfully delivered to a merchant's primary bank account.\n  * **PayoutReversed**       - A payout was returned due to an error and has been credit back to the merchant's account.\n  * **InvoiceIssued**        - An invoice was issued to a gross settlement merchant for their outstanding platform fees.\n  * **InvoiceDue**           - An outstanding invoice is due for payment.\n  * **InvoicePaymentFailed** - A payment made towards an invoice has failed.\n  * **InvoicePaid**          - An invoice was successfully paid.\n  * **PaymentSourceCreated** - A payment source has been successfully created.\n  * **PaymentSourceMethodUpdated** - A payment source has been successfully updated.\n  * **PaymentSourceDeleted** - A payment source has been deleted.\n  * **LoanCreated**          - A new loan was created.\n  * **LoanStatementCreated** - A customer statement was created for a loan but not yet issued to the customer.\n  * **LoanStatementIssued**  - A customer statement was issued for a loan.\n  * **LoanStatementDue**     - A customer loan statement has reached its due date with an outstanding balance.\n  * **LoanStatementPaid**    - A loan statement has been successfully paid.\n  * **LoanPaymentFailed**    - A payment made towards a loan has failed.\n",
        "type": "string",
        "enum": [
          "MerchantCreated",
          "MerchantActivated",
          "MerchantSuspended",
          "MerchantAvailableBalanceUpdated",
          "MerchantBankAccountAdded",
          "MerchantPrimaryBankAccountUpdated",
          "PayPlanCreated",
          "PayPlanActivated",
          "PayPlanCompleted",
          "PayPlanInDefault",
          "PayInFullCreated",
          "PayInFullAccepted",
          "PayInFullAuthorised",
          "PayInFullCompleted",
          "TransactionPaid",
          "TransactionFailed",
          "DisputeCreated",
          "DisputeUpdated",
          "PayoutCreated",
          "PayoutPending",
          "PayoutFailed",
          "PayoutPaid",
          "PayoutReversed",
          "InvoiceIssued",
          "InvoiceDue",
          "InvoicePaymentFailed",
          "InvoicePaid",
          "PaymentSourceCreated",
          "PaymentSourceMethodUpdated",
          "PaymentSourceDeleted",
          "LoanCreated",
          "LoanStatementCreated",
          "LoanStatementIssued",
          "LoanStatementDue",
          "LoanStatementPaid",
          "LoanPaymentFailed"
        ]
      },
      "WebhookMarketplaceSubscription": {
        "title": "WebhookMarketplaceSubscription",
        "type": "object",
        "required": [
          "WebhookMarketplaceSubscription"
        ],
        "properties": {
          "WebhookMarketplaceSubscription": {
            "$ref": "#/components/schemas/WebhookMarketplaceSubscription1"
          }
        }
      },
      "WebhookMarketplaceSubscription1": {
        "title": "WebhookMarketplaceSubscription",
        "type": "object",
        "required": [
          "id",
          "marketplaceId",
          "url",
          "status"
        ],
        "properties": {
          "id": {
            "description": "Unique identifier for this webhook subscription.",
            "examples": [
              "webhook_n9CdwzVF-cwZuB69"
            ],
            "type": "string"
          },
          "marketplaceId": {
            "description": "The marketplace system identifier for the marketplace for which you will receive webhook events.",
            "examples": [
              "mktp_VVNMqRkINoQmHcVs"
            ],
            "type": "string"
          },
          "url": {
            "description": "Destination endpoint that will be called via an HTTP POST on new events.",
            "examples": [
              "https://api.myservice.io/events"
            ],
            "type": "string"
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            }
          },
          "description": {
            "description": "An optional description indicating what the webhook is used for.",
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Optional metadata to include in the payload of all webhooks generated by this subscription."
          },
          "status": {
            "$ref": "#/components/schemas/WebhookSubscriptionState",
            "description": "Is this subscription currently active."
          },
          "secret": {
            "description": "Key used to sign events. Can be used to verify the event is genuine.",
            "type": "string"
          }
        }
      },
      "WebhookMerchantSubscription": {
        "title": "WebhookMerchantSubscription",
        "type": "object",
        "required": [
          "WebhookMerchantSubscription"
        ],
        "properties": {
          "WebhookMerchantSubscription": {
            "$ref": "#/components/schemas/WebhookMerchantSubscription1"
          }
        }
      },
      "WebhookMerchantSubscription1": {
        "title": "WebhookMerchantSubscription",
        "type": "object",
        "required": [
          "id",
          "merchantId",
          "url",
          "status"
        ],
        "properties": {
          "id": {
            "description": "Unique identifier for this webhook subscription.",
            "examples": [
              "webhook_n9CdwzVF-cwZuB69"
            ],
            "type": "string"
          },
          "merchantId": {
            "description": "The merchant system identifier for the merchant for which you will receive webhook events.",
            "examples": [
              "mcht_dXLkJ1hGc6-ppNSd"
            ],
            "type": "string"
          },
          "url": {
            "description": "Destination endpoint that will be called via an HTTP POST on new events.",
            "examples": [
              "https://api.myservice.io/events"
            ],
            "type": "string"
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookEventType"
            }
          },
          "description": {
            "description": "An optional description indicating what the webhook is used for.",
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/JsonObject",
            "description": "Optional metadata to include in the payload of all webhooks generated by this subscription."
          },
          "status": {
            "$ref": "#/components/schemas/WebhookSubscriptionState",
            "description": "Is this subscription currently active."
          },
          "secret": {
            "description": "Key used to sign events. Can be used to verify the event is genuine.",
            "type": "string"
          }
        }
      },
      "WebhookSubscriptionResponse": {
        "title": "WebhookSubscriptionResponse",
        "oneOf": [
          {
            "$ref": "#/components/schemas/WebhookMarketplaceSubscription"
          },
          {
            "$ref": "#/components/schemas/WebhookMerchantSubscription"
          }
        ]
      },
      "WebhookSubscriptionState": {
        "title": "WebhookSubscriptionState",
        "type": "string",
        "enum": [
          "Active",
          "Suspended"
        ]
      },
      "Weekly": {
        "title": "Weekly",
        "type": "object",
        "required": [
          "Weekly"
        ],
        "properties": {
          "Weekly": {
            "$ref": "#/components/schemas/Weekly1"
          }
        }
      },
      "Weekly1": {
        "title": "Weekly",
        "type": "object",
        "required": [
          "issueDayOfWeek"
        ],
        "properties": {
          "issueDayOfWeek": {
            "$ref": "#/components/schemas/DayOfWeek1"
          }
        }
      }
    },
    "securitySchemes": {
      "Enterprise API Key | Marketplace API Key | Admin JWT | Marketplace JWT | Customer JWT": {
        "type": "http",
        "description": "Enterprise API Key or Marketplace API Key or Admin JWT or Marketplace JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": {
        "type": "http",
        "description": "Enterprise API Key or Marketplace API Key or Merchant Secret Token or Admin JWT or Merchant JWT or Marketplace JWT",
        "scheme": "bearer"
      },
      "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": {
        "type": "http",
        "description": "Enterprise API Key or Marketplace API Key or Merchant Secret Token or Admin JWT or Merchant JWT or Marketplace JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Enterprise API Key | Marketplace API Key | Merchant Secret Token | Customer API Key | Merchant JWT | Customer JWT": {
        "type": "http",
        "description": "Enterprise API Key or Marketplace API Key or Merchant Secret Token or Customer API Key or Merchant JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Admin JWT | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Admin JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Admin JWT | Marketplace JWT": {
        "type": "http",
        "description": "Marketplace API Key or Admin JWT or Marketplace JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Admin JWT | Merchant JWT | Marketplace JWT": {
        "type": "http",
        "description": "Marketplace API Key or Admin JWT or Merchant JWT or Marketplace JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Enterprise API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Enterprise API Key or Merchant Secret Token or Admin JWT or Merchant JWT or Marketplace JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Marketplace JWT | Admin JWT": {
        "type": "http",
        "description": "Marketplace API Key or Marketplace JWT or Admin JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant JWT | Marketplace JWT | Admin JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant JWT or Marketplace JWT or Admin JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Public Token or Merchant Secret Token or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Public Token or Merchant Secret Token or Customer JWT or Merchant JWT or Marketplace JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Public Token | Merchant Secret Token | Customer JWT | Merchant JWT | Marketplace JWT | Admin JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Public Token or Merchant Secret Token or Customer JWT or Merchant JWT or Marketplace JWT or Admin JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Admin JWT | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Admin JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Admin JWT | Marketplace JWT | Merchant JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Admin JWT or Marketplace JWT or Merchant JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Admin JWT or Merchant JWT or Marketplace JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Admin JWT | Merchant JWT | Marketplace JWT | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Admin JWT or Merchant JWT or Marketplace JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Marketplace JWT | Merchant JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Marketplace JWT or Merchant JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Merchant JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Merchant JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Merchant JWT or Marketplace JWT or Admin JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Merchant JWT | Marketplace JWT | Admin JWT | Customer JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Merchant JWT or Marketplace JWT or Admin JWT or Customer JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Pay By Link Token": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Pay By Link Token",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Pay By Link Token | Admin JWT | Marketplace JWT | Merchant JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Pay By Link Token or Admin JWT or Marketplace JWT or Merchant JWT",
        "scheme": "bearer"
      },
      "Marketplace API Key | Merchant Secret Token | Pay By Link Token | Admin JWT | Merchant JWT | Marketplace JWT": {
        "type": "http",
        "description": "Marketplace API Key or Merchant Secret Token or Pay By Link Token or Admin JWT or Merchant JWT or Marketplace JWT",
        "scheme": "bearer"
      }
    }
  }
}