> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cadanapay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Payment corridor requirements

> Returns a Draft-07 JSON-Schema fragment that specifies every field, enum, regex and conditional rule for the requested `countryCode` + `currency` + `paymentMethod`.




## OpenAPI

````yaml /openapi/embedded-payments.yaml get /v1/payment-requirements
openapi: 3.0.0
info:
  description: APIs for interacting with Cadana Global Payments
  version: 1.0.0
  title: Embedded Payments
  termsOfService: https://cadanapay.com/terms-and-conditions
  contact:
    email: api@cadanapay.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://api.cadanapay.com
    description: Prod Server
  - url: https://dev-api.cadanapay.com
    description: Dev Server
security:
  - Authorization: []
tags:
  - name: Beneficiaries
    description: APIs for managing beneficiaries
  - name: Payouts
    description: APIs for managing payouts
  - name: Balances
    description: APIs for managing account balances
  - name: FX
    description: APIs for managing foreign exchange rates
  - name: Resources
    description: Resource APIs to access and manage foundational data
  - name: Virtual Accounts
    description: APIs for managing virtual accounts
paths:
  /v1/payment-requirements:
    get:
      tags:
        - Resources
      summary: Payment corridor requirements
      description: >
        Returns a Draft-07 JSON-Schema fragment that specifies every field,
        enum, regex and conditional rule for the requested `countryCode` +
        `currency` + `paymentMethod`.
      operationId: getPaymentRequirements
      parameters:
        - name: countryCode
          in: query
          required: true
          schema:
            type: string
            example: CO
        - name: paymentMethod
          in: query
          required: true
          schema:
            type: string
            example: bank
        - name: currency
          in: query
          required: true
          schema:
            type: string
            example: COP
        - $ref: '#/components/parameters/XMultiTenantKey'
      responses:
        '200':
          description: Draft-07 JSON-Schema fragment
          content:
            application/schema+json:
              schema:
                $ref: '#/components/schemas/JSONSchemaDraft07'
              examples:
                colombiaBank:
                  $ref: '#/components/examples/coBankSchema'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        5XX:
          $ref: '#/components/responses/InternalError'
components:
  parameters:
    XMultiTenantKey:
      name: X-MultiTenantKey
      in: header
      required: false
      schema:
        type: string
      description: >-
        Required when using a Platform API token. The tenant key identifying
        which business to operate on.
  schemas:
    JSONSchemaDraft07:
      description: >
        This is a Draft-07 JSON Schema fragment. For the full meta-schema, see
        https://json-schema.org/draft-07/schema#. 

        Rely on the provided example for the expected structure.
    BadRequestError:
      description: Bad input provided by client
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          properties:
            params:
              description: A map for meta data around the error that occurred
              type: object
      example:
        code: invalid_request_body
        message: The request body provided is not valid
        params:
          field: Value is invalid.
    NotFoundError:
      description: Not Found
      allOf:
        - $ref: '#/components/schemas/Error'
      example:
        code: resource_not_found
        message: Requested resource could not be found.
    InternalError:
      description: Internal server error
      allOf:
        - $ref: '#/components/schemas/Error'
      example:
        code: internal_error
        message: An unexpected error occurred. Please try again later.
    Error:
      type: object
      properties:
        code:
          description: A machine parsable error code
          type: string
          enum:
            - invalid_request_body
            - resource_not_found
            - forbidden
            - internal_error
        message:
          description: A human readable message describing the error
          type: string
  examples:
    coBankSchema:
      summary: Colombia - bank payment method schema
      value:
        $schema: http://json-schema.org/draft-07/schema#
        $id: https://api.cadana.com/schemas/paymentDetails.bank.CO.json
        title: Colombia - bank payment details
        type: object
        additionalProperties: false
        required:
          - accountName
          - accountNumber
          - bankCode
          - bankName
          - accountType
          - beneficiaryId
          - address
          - email
        properties:
          accountName:
            type: string
            maxLength: 60
          accountNumber:
            type: string
            pattern: ^[0-9]{9,16}$
            description: 9-16-digit Colombian account number
          bankCode:
            type: string
            pattern: ^[A-Za-z0-9]{1,11}$
            description: 1-11 alphanumeric bank code
          accountType:
            type: string
            enum:
              - Checking
              - Saving
          email:
            type: string
            format: email
            maxLength: 100
          beneficiaryId:
            type: object
            additionalProperties: false
            required:
              - type
              - value
            properties:
              type:
                type: string
                enum:
                  - NIT
                  - CC
                  - CE
                  - TI
                  - PASS
              value:
                type: string
            allOf:
              - if:
                  properties:
                    type:
                      const: NIT
                then:
                  properties:
                    value:
                      pattern: ^\d{9,11}$
              - if:
                  properties:
                    type:
                      const: CC
                then:
                  properties:
                    value:
                      pattern: ^\d{6,10}$
          address:
            type: object
            additionalProperties: false
            required:
              - line1
              - city
              - countryCode
            properties:
              line1:
                type: string
                maxLength: 70
              city:
                type: string
                maxLength: 50
              countryCode:
                const: CO
  responses:
    BadRequestError:
      description: Bad input provided by client
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BadRequestError'
    NotFoundError:
      description: Requested resource was not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NotFoundError'
    InternalError:
      description: Internal error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InternalError'
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      bearerFormat: API_SECRET_KEY

````